Importers

Manages Importer options and instances

interface Importer 
extends WithLabelOrNot {
  icon: Node
  label?: string
  media: (file: File | FileSystemFileHandle | ImporterFileDetails) => Promise<DataOrError<Media>>
  ui: () => Node
}
interface ImporterAddEventDetail  {
  media: Media
  promise?: Promise<DataOrError<Media>>
}
interface ImporterErrorEventDetail 
extends Object {
  errored: Errored
}
interface ImporterFileDetails  {
  bytes: number
  dropType: FileType
  extension: string
  fetchId: string
  file: File
  importType: ImportType
  importerId: string
  mediaType: MediaType
  name: string
}
interface ImporterOptions 
extends WithId, WithLabelOrNot, WithType {
  id: string
  label?: string
  type: string
}
type ImportersImporterFunction = (args: ImporterOptions, opts?: JobOptions) => Promise<DataOrError<Importer>>
type ImportersMediaFunction = (file: File | FileSystemFileHandle) => Promise<DataOrError<Media>>
interface ImportersPlugin 
extends Plugable {
  importer: ImportersImporterFunction
  install: function
  media: ImportersMediaFunction
}
interface ImportersPluginOptions  {
  modules: Record<string, Strings>
  uploadOptions?: ApiUploadOptions
}
class ImporterContentElement
extends ContentElementBase {
  chromeCss: CSSResult
  connectedCallback: () => void
  contentCss: CSSResult
  cssBorderBoxSizing: CSSResult
  cssHostDropping: CSSResult
  cssHostFlex: CSSResult
  cssShared: CSSResult
  defaultContent: () => OptionalContent
  disconnectedCallback: () => void
  partContent: (part: string, slots: Array<Element>) => OptionalContent
  partSeparator: string
  pluginsNeeded: Array<PluginId>
  properties: PropertyDeclarations
  refreshParts: () => string
  signals: SignalsRecord
  styles: CSSResult
  subscribe: (handler: SignalFunction, arg: string | SignalId | PropertyObject, name?: string, type?: string) => Signal
  templateContent: (contents: TemplateContents) => TemplateContent
  unsubscribe: (arg: string | SignalId | PropertyObject, name?: string, type?: string) => void
  variable: (name: string) => number
  variableSet: (nameOrSignal: Signal | string, value?: Scalar, suffix?: string) => void
  variableString: (name: string) => string
}
class ImporterElement
extends PanelElementBase {
  connectedCallback: () => void
  contentContent: (slots: Array<Element>) => OptionalContent
  cssBorderBoxSizing: CSSResult
  cssHostDropping: CSSResult
  cssHostFlex: CSSResult
  defaultContent: () => OptionalContent
  disconnectedCallback: () => void
  footerContent: (slots: Array<Element>) => OptionalContent
  headerContent: (slots: Array<Element>) => OptionalContent
  partContent: (part: string, slots: Array<Element>) => OptionalContent
  partSeparator: string
  pluginsNeeded: Array<PluginId>
  properties: PropertyDeclarations
  refreshParts: () => string
  signals: SignalsRecord
  styles: CSSResult
  subscribe: (handler: SignalFunction, arg: string | SignalId | PropertyObject, name?: string, type?: string) => Signal
  templateContent: (contents: TemplateContents) => TemplateContent
  unsubscribe: (arg: string | SignalId | PropertyObject, name?: string, type?: string) => void
  variable: (name: string) => number
  variableSet: (nameOrSignal: Signal | string, value?: Scalar, suffix?: string) => void
  variableString: (name: string) => string
}
class ImporterHeaderElement
extends HeaderElementBase {
  chromeCss: CSSResult
  connectedCallback: () => void
  contentCss: CSSResult
  cssBorderBoxSizing: CSSResult
  cssHostDropping: CSSResult
  cssHostFlex: CSSResult
  cssShared: CSSResult
  defaultContent: () => OptionalContent
  disconnectedCallback: () => void
  partContent: (part: string, slots: Array<Element>) => OptionalContent
  partSeparator: string
  pluginsNeeded: Array<PluginId>
  properties: PropertyDeclarations
  refreshParts: () => string
  signals: SignalsRecord
  styles: CSSResult
  subscribe: (handler: SignalFunction, arg: string | SignalId | PropertyObject, name?: string, type?: string) => Signal
  templateContent: (contents: TemplateContents) => TemplateContent
  unsubscribe: (arg: string | SignalId | PropertyObject, name?: string, type?: string) => void
  variable: (name: string) => number
  variableSet: (nameOrSignal: Signal | string, value?: Scalar, suffix?: string) => void
  variableString: (name: string) => string
}
/** @implements ImportersPlugin */
class ImportersPluginClass {
  importer: ImportersImporterFunction
  install: function
  media: ImportersMediaFunction
}