import { type ApiSuccess } from '../../types/api/success';
export declare const AGENT_ONBOARDING_RUN_STATUSES: readonly ["queued", "running", "completed", "failed", "cancelled"];
export type AgentOnboardingRunStatus = (typeof AGENT_ONBOARDING_RUN_STATUSES)[number];
export declare const AGENT_ONBOARDING_ACTIVE_STATUSES: readonly ["queued", "running"];
export declare const AGENT_ONBOARDING_TERMINAL_STATUSES: readonly ["completed", "failed", "cancelled"];
export type AgentOnboardingTerminalStatus = (typeof AGENT_ONBOARDING_TERMINAL_STATUSES)[number];
export declare const isAgentOnboardingRunTerminal: (status: AgentOnboardingRunStatus) => status is AgentOnboardingTerminalStatus;
export declare const AGENT_ONBOARDING_STAGES: readonly ["preparing_project", "exploring_warehouse", "deploying_semantic_layer", "building_dashboard", "verifying", "handoff"];
export type AgentOnboardingStage = (typeof AGENT_ONBOARDING_STAGES)[number];
export type AgentOnboardingRunEvent = {
    eventType: 'stage' | 'step' | 'log';
    message: string;
    stage: AgentOnboardingStage | null;
    createdAt: string;
};
export type AgentOnboardingHandoff = {
    summary: string | null;
    dashboardUrl: string | null;
};
export type AgentOnboardingUsage = {
    costUsd: number | null;
    inputTokens: number | null;
    outputTokens: number | null;
    numTurns: number | null;
};
export type AgentOnboardingFile = {
    path: string;
    sizeBytes: number;
    updatedAt: string;
};
export type AgentOnboardingFileContent = AgentOnboardingFile & {
    content: string;
    encoding: 'utf8' | 'base64';
};
export type AgentOnboardingRun = {
    agentOnboardingRunUuid: string;
    projectUuid: string;
    status: AgentOnboardingRunStatus;
    stage: AgentOnboardingStage | null;
    events: AgentOnboardingRunEvent[];
    handoff: AgentOnboardingHandoff | null;
    usage: AgentOnboardingUsage | null;
    files: AgentOnboardingFile[];
    errorMessage: string | null;
    createdAt: string;
    updatedAt: string;
    startedAt: string | null;
    completedAt: string | null;
};
export type ApiAgentOnboardingRunResponse = ApiSuccess<AgentOnboardingRun>;
export type ApiAgentOnboardingFileResponse = ApiSuccess<AgentOnboardingFileContent>;
export type AgentOnboardingJobPayload = {
    agentOnboardingRunUuid: string;
};
//# sourceMappingURL=types.d.ts.map