UNPKG

@loom-io/converter

Version:

Combines loom-io converters to convert from or to files

20 lines (19 loc) 1.07 kB
import { LoomFile } from "@loom-io/core"; import { FileConverter } from "./definitions.js"; export interface CombinedConverterOptions { failOnNoConverter?: boolean; } export declare class CombinedConverter<T> implements FileConverter { protected converters: Array<FileConverter<T>>; protected config: CombinedConverterOptions; constructor(converters: Array<FileConverter<T>> | FileConverter<T>, options?: CombinedConverterOptions); protected converterSetAction(action: "add" | "delete", ...converters: Array<FileConverter<T>>): void; set options(options: CombinedConverterOptions); get options(): CombinedConverterOptions; addConverter(converter: FileConverter<T>, ...converters: Array<FileConverter<T>>): void; removeConverter(converter: FileConverter<T>, ...converters: Array<FileConverter<T>>): void; protected getConverter(file: LoomFile): Promise<FileConverter<T> | undefined>; verify(file: LoomFile): Promise<boolean>; unify(file: LoomFile, content: T): Promise<void>; parse(file: LoomFile): Promise<T | void>; }