/**
 * @license
 * Copyright 2025 Steven Roussey <sroussey@gmail.com>
 * SPDX-License-Identifier: Apache-2.0
 */
import { CreateWorkflow, IExecuteContext, Task, TaskConfig } from "@workglow/task-graph";
import { FromSchema, TypedArraySchemaOptions } from "@workglow/util/schema";
declare const inputSchema: {
    readonly type: "object";
    readonly properties: {
        readonly vectors: {
            readonly type: "array";
            readonly items: {
                readonly type: "array";
                readonly format: "TypedArray";
                readonly title: "Typed Array";
                readonly description: "A typed array (Float32Array, Int8Array, etc.)";
            };
            readonly title: "Vectors";
            readonly description: "Array of two vectors to compute dot product";
        };
    };
    readonly required: readonly ["vectors"];
    readonly additionalProperties: false;
};
declare const outputSchema: {
    readonly type: "object";
    readonly properties: {
        readonly result: {
            readonly type: "number";
            readonly title: "Result";
            readonly description: "Dot product of the vectors";
        };
    };
    readonly required: readonly ["result"];
    readonly additionalProperties: false;
};
export type VectorDotProductTaskInput = FromSchema<typeof inputSchema, TypedArraySchemaOptions>;
export type VectorDotProductTaskOutput = FromSchema<typeof outputSchema>;
export declare class VectorDotProductTask<Input extends VectorDotProductTaskInput = VectorDotProductTaskInput, Output extends VectorDotProductTaskOutput = VectorDotProductTaskOutput, Config extends TaskConfig = TaskConfig> extends Task<Input, Output, Config> {
    static readonly type = "VectorDotProductTask";
    static readonly category = "Vector";
    static title: string;
    static description: string;
    static inputSchema(): {
        readonly type: "object";
        readonly properties: {
            readonly vectors: {
                readonly type: "array";
                readonly items: {
                    readonly type: "array";
                    readonly format: "TypedArray";
                    readonly title: "Typed Array";
                    readonly description: "A typed array (Float32Array, Int8Array, etc.)";
                };
                readonly title: "Vectors";
                readonly description: "Array of two vectors to compute dot product";
            };
        };
        readonly required: readonly ["vectors"];
        readonly additionalProperties: false;
    };
    static outputSchema(): {
        readonly type: "object";
        readonly properties: {
            readonly result: {
                readonly type: "number";
                readonly title: "Result";
                readonly description: "Dot product of the vectors";
            };
        };
        readonly required: readonly ["result"];
        readonly additionalProperties: false;
    };
    execute(input: Input, _context: IExecuteContext): Promise<Output>;
}
declare module "@workglow/task-graph" {
    interface Workflow {
        vectorDotProduct: CreateWorkflow<VectorDotProductTaskInput, VectorDotProductTaskOutput, TaskConfig>;
    }
}
export {};
//# sourceMappingURL=VectorDotProductTask.d.ts.map