export type ArtifactType = 'image' | 'video' | 'audio' | 'model' | 'text' | 'workflow' | 'collection'; export interface IntentInputPendingActionRef { kind: string; toolName?: string; toolCallId?: string; workflowRunId?: string; payload?: Record; } export interface IntentInputLastToolResultRef { toolName: string; toolCallId: string; status: string; } export interface IntentInputActiveState { activeArtifactId?: string; activeArtifactType?: ArtifactType; pendingAction?: IntentInputPendingActionRef; awaitingConfirmation?: boolean; lastToolResult?: IntentInputLastToolResultRef; activeWorkflowRunId?: string; } export interface IntentInputArtifactState { selectedArtifactIds: string[]; artifactIds: string[]; lastGeneratedArtifactId?: string; lastEditedArtifactId?: string; } export interface IntentInputRecentTurn { role: 'user' | 'assistant' | 'tool' | 'system'; content: string; sequence: number; } export type IntentInputSurface = 'browser' | 'hosted_chat' | 'durable_chat' | 'workflow' | 'native' | 'skill'; export interface IntentInputCurrentMessageDetails { id?: string; role?: 'user' | 'system'; text: string; createdAt?: string; localeHint?: string; } export interface IntentInputRuntimeFlags { surface?: IntentInputSurface; allowPaidTools?: boolean; allowMutatingTools?: boolean; durableRequired?: boolean; } export interface IntentInput { currentMessage: string; currentMessageDetails?: IntentInputCurrentMessageDetails; activeState: IntentInputActiveState; artifactState: IntentInputArtifactState; recentTurns: IntentInputRecentTurn[]; conversationSummary: string; availableCapabilitiesSummary: string[]; userPreferences?: Record; runtimeFlags?: IntentInputRuntimeFlags; } export interface LegacyIntentInputV0 { userText: string; recentTurns: IntentInputRecentTurn[]; active: { activeRunId?: string; activeWorkflowRunId?: string; pendingActions: Array<{ kind: string; toolName?: string; toolCallId?: string; workflowRunId?: string; payload?: Record; }>; recentToolResults: Array<{ toolCallId: string; toolName: string; status: 'ok' | 'err' | 'cancelled' | 'waiting_for_user'; sequence?: number; }>; }; artifacts: { artifactIds: string[]; selectedArtifactId?: string; lastCreatedArtifactId?: string; byKind?: Partial>; }; locale?: string; correlationId?: string; } export declare function isArtifactType(value: unknown): value is ArtifactType; export declare function isIntentInputSurface(value: unknown): value is IntentInputSurface; export declare function isIntentInputCurrentMessageDetails(value: unknown): value is IntentInputCurrentMessageDetails; export declare function isIntentInputRuntimeFlags(value: unknown): value is IntentInputRuntimeFlags; export declare function isIntentInputPendingActionRef(value: unknown): value is IntentInputPendingActionRef; export declare function isIntentInputLastToolResultRef(value: unknown): value is IntentInputLastToolResultRef; export declare function isIntentInputActiveState(value: unknown): value is IntentInputActiveState; export declare function isIntentInputArtifactState(value: unknown): value is IntentInputArtifactState; export declare function isIntentInputRecentTurn(value: unknown): value is IntentInputRecentTurn; export declare function isIntentInput(value: unknown): value is IntentInput; export interface IntentInputValidationError { path: string; message: string; } export interface IntentInputValidationResult { valid: boolean; errors: IntentInputValidationError[]; } export declare function validateIntentInput(value: unknown): IntentInputValidationResult; //# sourceMappingURL=intentInput.d.ts.map