@dxos/compute - v0.16.0
    Preparing search index...

    Interface OperationService

    Operation service interface - provides unified access to operation invocation and scheduling. This service is automatically provided to operation handlers.

    interface OperationService {
        invoke: <I, O>(
            op: Operation.Definition<I, O>,
            ...args: void extends I
                ? [input?: I, options?: Operation.InvokeOptions]
                : [input: I, options?: Operation.InvokeOptions],
        ) => Effect<O, NoHandlerError>;
        invokePromise: <I, O>(
            op: Operation.Definition<I, O>,
            ...args: void extends I
                ? [input?: I, options?: Operation.InvokeOptions]
                : [input: I, options?: Operation.InvokeOptions],
        ) => Promise<{ data?: O; error?: Error }>;
        schedule: <I, O>(
            op: Operation.Definition<I, O>,
            ...args: void extends I
                ? [input?: I, options?: Operation.InvokeOptions]
                : [input: I, options?: Operation.InvokeOptions],
        ) => Effect<void>;
    }
    Index

    Properties

    invoke: <I, O>(
        op: Operation.Definition<I, O>,
        ...args: void extends I
            ? [input?: I, options?: Operation.InvokeOptions]
            : [input: I, options?: Operation.InvokeOptions],
    ) => Effect<O, NoHandlerError>

    Invoke an operation as an Effect. Returns an Effect that resolves to the operation output.

    invokePromise: <I, O>(
        op: Operation.Definition<I, O>,
        ...args: void extends I
            ? [input?: I, options?: Operation.InvokeOptions]
            : [input: I, options?: Operation.InvokeOptions],
    ) => Promise<{ data?: O; error?: Error }>

    Invoke an operation and return a Promise. Useful for async contexts where Effect is not available.

    schedule: <I, O>(
        op: Operation.Definition<I, O>,
        ...args: void extends I
            ? [input?: I, options?: Operation.InvokeOptions]
            : [input: I, options?: Operation.InvokeOptions],
    ) => Effect<void>

    Schedule an operation to run as a followup. The followup is tracked and won't be cancelled when the parent operation completes. Returns an Effect that completes immediately after scheduling.