Contents

file

The app entity describes a file.

Declaration

var file: some AssistantSchemas.Entity { get }

Mentioned in

Overview

Use Swift macros that generate additional properties and add protocol conformance for your app entity implementation. The following example shows an app entity that conforms to the .files.file schema:

@AppEntity(schema: .files.file)
struct ExampleFileEntity: FileEntity {
    var displayRepresentation: AppIntents.DisplayRepresentation { "Example File" }

    static var supportedContentTypes = [UTType.image]

    var id: FileEntityIdentifier

    @Property
    var creationDate: Date?

    @Property
    var fileModificationDate: Date?

    struct Query: EntityStringQuery {
        func entities(for identifiers: [ExampleFileEntity.ID]) async throws -> [ExampleFileEntity] { [] }
        func entities(matching string: String) async throws -> [ExampleFileEntity] { [] }
    }
}

For more information about the .files app intent domain, see Making file management actions available to Siri and Apple Intelligence. For general information about app intent domains, see Integrating actions with Siri and Apple Intelligence.

See Also

Content and parameter types