import { Graph } from '../../graph/graph.js';
import { INodeDefinition, ISubgraphContainer, Node } from '../../programmatic/node.js';
import { Input, ToInput, ToOutput } from '../../programmatic/index.js';
export interface IArraySubgraph extends INodeDefinition {
    innerGraph?: Graph;
}
export default class ArraySubgraph<T extends undefined> extends Node implements ISubgraphContainer {
    static readonly title = "Array find";
    static readonly type = "tokens.studio.array.find";
    static readonly description = "Finds an item in an array";
    _innerGraph: Graph;
    inputs: ToInput<{
        array: T[];
    } & Record<string, Input>>;
    outputs: ToOutput<{
        value: T;
        found: boolean;
        index: number;
    }>;
    constructor(props: IArraySubgraph);
    execute(): Promise<void>;
    serialize(): {
        innergraph: import("../../index.js").SerializedGraph;
        id: string;
        annotations?: Record<string, any>;
        type: string;
        inputs: import("../../index.js").SerializedInput[];
    };
    static deserialize(opts: any): Promise<Node>;
    getSubgraphs(): Graph[];
    getGraphProperties(): Record<string, Graph | undefined>;
}
//# sourceMappingURL=find.d.ts.map