import { type Static, type TSchema } from "@sinclair/typebox"; export declare const workletTextContentSchema: import("@sinclair/typebox").TObject<{ text: import("@sinclair/typebox").TString; type: import("@sinclair/typebox").TLiteral<"text">; }>; export declare const workletImageContentSchema: import("@sinclair/typebox").TObject<{ data: import("@sinclair/typebox").TString; mimeType: import("@sinclair/typebox").TString; type: import("@sinclair/typebox").TLiteral<"image">; }>; export declare const workletContentSchema: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ text: import("@sinclair/typebox").TString; type: import("@sinclair/typebox").TLiteral<"text">; }>, import("@sinclair/typebox").TObject<{ data: import("@sinclair/typebox").TString; mimeType: import("@sinclair/typebox").TString; type: import("@sinclair/typebox").TLiteral<"image">; }>]>; export type WorkletContent = Static; export declare const workletToolResultSchema: import("@sinclair/typebox").TObject<{ content: import("@sinclair/typebox").TArray; }>, import("@sinclair/typebox").TObject<{ data: import("@sinclair/typebox").TString; mimeType: import("@sinclair/typebox").TString; type: import("@sinclair/typebox").TLiteral<"image">; }>]>>; isError: import("@sinclair/typebox").TOptional; structuredContent: import("@sinclair/typebox").TOptional; }>; export type WorkletToolResult = Static; /** The JSON Schema subset accepted at the worklet socket boundary. */ export declare const workletInputSchemaSchema: import("@sinclair/typebox").TObject<{ additionalProperties: import("@sinclair/typebox").TOptional>; properties: import("@sinclair/typebox").TOptional>; required: import("@sinclair/typebox").TOptional>; type: import("@sinclair/typebox").TLiteral<"object">; }>; export declare const workletToolRegistrationSchema: import("@sinclair/typebox").TObject<{ description: import("@sinclair/typebox").TString; inputSchema: import("@sinclair/typebox").TObject<{ additionalProperties: import("@sinclair/typebox").TOptional>; properties: import("@sinclair/typebox").TOptional>; required: import("@sinclair/typebox").TOptional>; type: import("@sinclair/typebox").TLiteral<"object">; }>; name: import("@sinclair/typebox").TString; }>; export declare const registerWorkletToolsRequestSchema: import("@sinclair/typebox").TObject<{ tools: import("@sinclair/typebox").TArray>; properties: import("@sinclair/typebox").TOptional>; required: import("@sinclair/typebox").TOptional>; type: import("@sinclair/typebox").TLiteral<"object">; }>; name: import("@sinclair/typebox").TString; }>>; }>; export type RegisterWorkletToolsRequest = Static; export declare const registerWorkletToolsResponseSchema: import("@sinclair/typebox").TObject<{ registrationId: import("@sinclair/typebox").TString; }>; export declare const workletCallEventSchema: import("@sinclair/typebox").TObject<{ arguments: import("@sinclair/typebox").TUnknown; callId: import("@sinclair/typebox").TString; tool: import("@sinclair/typebox").TString; type: import("@sinclair/typebox").TLiteral<"call">; }>; export declare const workletCancelEventSchema: import("@sinclair/typebox").TObject<{ callId: import("@sinclair/typebox").TString; type: import("@sinclair/typebox").TLiteral<"cancel">; }>; export declare const workletEventSchema: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ arguments: import("@sinclair/typebox").TUnknown; callId: import("@sinclair/typebox").TString; tool: import("@sinclair/typebox").TString; type: import("@sinclair/typebox").TLiteral<"call">; }>, import("@sinclair/typebox").TObject<{ callId: import("@sinclair/typebox").TString; type: import("@sinclair/typebox").TLiteral<"cancel">; }>]>; export type WorkletEvent = Static; export declare const workletCallCompletionSchema: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ result: import("@sinclair/typebox").TObject<{ content: import("@sinclair/typebox").TArray; }>, import("@sinclair/typebox").TObject<{ data: import("@sinclair/typebox").TString; mimeType: import("@sinclair/typebox").TString; type: import("@sinclair/typebox").TLiteral<"image">; }>]>>; isError: import("@sinclair/typebox").TOptional; structuredContent: import("@sinclair/typebox").TOptional; }>; }>, import("@sinclair/typebox").TObject<{ error: import("@sinclair/typebox").TString; }>]>; export type WorkletCallCompletion = Static; export declare const workletStatusSchema: import("@sinclair/typebox").TString; export declare const workletReadyRequestSchema: import("@sinclair/typebox").TObject<{ status: import("@sinclair/typebox").TOptional; }>; export declare const workletStatusRequestSchema: import("@sinclair/typebox").TObject<{ status: import("@sinclair/typebox").TString; }>; export declare const emptyWorkletResponseSchema: import("@sinclair/typebox").TObject<{}>; export interface WorkletToolContext { /** Aborted when Rig cancels the model call, times it out, or retires this worklet. */ readonly signal: AbortSignal; } export interface WorkletToolDefinition { readonly description: string; readonly inputSchema: TInputSchema; readonly name: string; execute(input: Static, context: WorkletToolContext): WorkletToolResult | Promise; } export interface CreateWorkletClientOptions { socketPath?: string; token?: string; } export declare const createWorkletClientOptionsSchema: import("@sinclair/typebox").TObject<{ socketPath: import("@sinclair/typebox").TOptional; token: import("@sinclair/typebox").TOptional; }>; export interface WorkletClient { /** The folder this worklet may write into. It survives every version change. */ readonly data: string; readonly name: string; /** Declares the tools agents can call. Registration must finish before `ready`. */ tools(tools: readonly WorkletToolDefinition[]): Promise; /** Reports that startup finished, optionally with the worklet's first status line. */ ready(status?: string): Promise; /** The worklet's own words about itself, shown in the interface. */ status(status: string): Promise; } //# sourceMappingURL=types.d.ts.map