transferum
    Preparing search index...

    Interface CompositeTransferBuilderInterface<TCurrent, TStartTransfer>

    Unified composite transfer builder interface — replaces Input/Output/Duplex builder interfaces.

    Pipeline structure: OutputTransfer [→ DuplexTransfer → …] → InputTransfer. The start transfer provides output capabilities (source of data); intermediate transfers are duplex (relay data through the chain); the finish transfer provides input capabilities (sink for data).

    The composite result exposes:

    • Input flags (Pushable, PollingProxy, AsyncPushable, AsyncPollingProxy) from the start transfer.
    • Output flags (Pullable, Subscribable, AsyncPullable) from the finish transfer.
    • Triggerable, AsyncTriggerable, Gate from explicit options or extracted by UniversalCompositeTransfer.

    Works for both sync and async pipelines — onLinkError in finish() options enables async error handling.

    interface CompositeTransferBuilderInterface<
        TCurrent,
        TStartTransfer extends OutputTransfer<unknown>,
    > {
        finish<
            TFinishTransfer extends InputTransfer<TCurrent>,
            TTriggerable extends TriggerableInterface | undefined = undefined,
            TAsyncTriggerable extends
                AsyncTriggerableInterface | undefined = undefined,
            TGate extends GateInterface
            | undefined = undefined,
        >(
            lastTransfer: TFinishTransfer,
            options?: {
                asyncTriggerable?: TAsyncTriggerable;
                gate?: TGate;
                onLinkError?: ErrorHandler<TFinishTransfer>;
                owned?: boolean;
                triggerable?: TTriggerable;
            },
        ): CompositeTransfer<
            InputTransferDataType<TStartTransfer>,
            OutputTransferDataType<TFinishTransfer>,
            TStartTransfer,
            TFinishTransfer,
            TTriggerable,
            TAsyncTriggerable,
            TGate,
        >;
        to<TNextTransfer extends DuplexTransfer<TCurrent, unknown>>(
            nextTransfer: TNextTransfer,
            options?: { onLinkError?: ErrorHandler<TNextTransfer>; owned?: boolean },
        ): CompositeTransferBuilderInterface<
            OutputTransferDataType<TNextTransfer>,
            TStartTransfer,
        >;
    }

    Type Parameters

    Implemented by

    Index