@flowscripter/pluggable-io-framework-api
    Preparing search index...

    Interface IOProviderFactory<TConfig, K, TLocation>

    Returned (as unknown, cast at the extension point boundary) from ExtensionFactory.create() in a dynamic-plugin-framework ExtensionDescriptor. At most one factory may be registered per (protocol, kind) pair.

    interface IOProviderFactory<
        TConfig = unknown,
        K extends PayloadKind = PayloadKind,
        TLocation = unknown,
    > {
        configSchema: ZodType<TConfig>;
        domains?: readonly string[];
        kind: K;
        locationSchema: ZodType<TLocation>;
        propertySchema: ZodType<Record<string, unknown>>;
        protocol: string;
        readPayloadTypes?: readonly string[];
        settablePropertySchema: ZodType<Partial<Record<string, unknown>>>;
        writePayloadTypes?: readonly string[];
        createProvider(
            config: TConfig,
            context: ProviderContext,
        ): Promise<IOProvider<K>>;
        parseLocationString(location: string): unknown;
        toProviderInputs(
            location: TLocation,
        ): { config: TConfig; target: LocationTarget };
    }

    Type Parameters

    Index
    configSchema: ZodType<TConfig>
    domains?: readonly string[]

    Native factories only: the memory domains this factory can produce and consume, in preference order.

    kind: K

    The payload kind of every provider this factory creates.

    locationSchema: ZodType<TLocation>

    Every field a location for this protocol can carry: connection info, entry address (path, optional filename, optional pattern) and credentials. Secret fields are marked with .meta({ secret: true }).

    propertySchema: ZodType<Record<string, unknown>>
    protocol: string

    The protocol (URI scheme) this factory serves, e.g. "file", "s3", "https".

    readPayloadTypes?: readonly string[]

    Payload type IDs this factory's readable streams can produce. Defaults to ["bytes"].

    settablePropertySchema: ZodType<Partial<Record<string, unknown>>>

    The subset of an entry's properties bag that setProperties accepts.

    writePayloadTypes?: readonly string[]

    Payload type IDs this factory's writable streams can accept. Defaults to ["bytes"].