/**
 * TalkToFigma 플래너가 주고받는 응답 계약과 파서 유틸을 정의한다.
 * 자연어 응답 대신 고정 JSON 계약을 강제해 ju-hong-e 본체가 직접 MCP를 실행할 수 있게 만든다.
 */
/**
 * TalkToFigma MCP 도구 1개의 메타데이터다.
 */
export type TalkToFigmaToolDescriptor = {
    /**
     * 서버가 노출한 도구 설명이다.
     */
    description: string;
    /**
     * 도구 입력 스키마다.
     */
    inputSchema?: unknown;
    /**
     * 도구 이름이다.
     */
    name: string;
};
/**
 * ju-hong-e 가 실제로 실행한 TalkToFigma 도구 호출 기록이다.
 */
export type TalkToFigmaToolExecution = {
    /**
     * 도구 호출 인자다.
     */
    arguments: Record<string, unknown>;
    /**
     * 도구 실행 출처다.
     */
    origin: 'automatic' | 'planner';
    /**
     * 도구 호출 성공 여부다.
     */
    ok: boolean;
    /**
     * 사용자와 AI가 다시 읽을 수 있는 실행 결과 문자열이다.
     */
    resultText: string;
    /**
     * 순번이다.
     */
    step: number;
    /**
     * 도구 이름이다.
     */
    toolName: string;
};
/**
 * AI가 다음 한 단계 MCP 호출을 지시할 때의 응답 계약이다.
 */
export type TalkToFigmaPlannerToolCall = {
    /**
     * 도구 실행 사유다.
     */
    reason: string;
    /**
     * 응답 종류다.
     */
    type: 'tool_call';
    /**
     * 호출할 도구 인자다.
     */
    arguments: Record<string, unknown>;
    /**
     * 호출할 도구 이름이다.
     */
    toolName: string;
};
/**
 * AI가 더 이상 도구 호출 없이 최종 결과만 반환할 때의 응답 계약이다.
 */
export type TalkToFigmaPlannerFinal = {
    /**
     * 변경했다고 판단한 node id 목록이다.
     */
    changedNodes: string[];
    /**
     * 남은 확인 필요 항목이다.
     */
    pendingIssues: string[];
    /**
     * 완료/차단 여부다.
     */
    status: 'blocked' | 'done';
    /**
     * 사용자에게 보여줄 최종 요약이다.
     */
    summary: string;
    /**
     * 응답 종류다.
     */
    type: 'final';
};
/**
 * TalkToFigma 플래너가 반환할 수 있는 전체 응답 유니온이다.
 */
export type TalkToFigmaPlannerResponse = TalkToFigmaPlannerToolCall | TalkToFigmaPlannerFinal;
/**
 * @description AI 원본 응답 문자열을 TalkToFigma 플래너 응답 계약으로 파싱한다.
 * @param text AI 원본 응답
 * @returns 정규화된 플래너 응답
 */
export declare function parseTalkToFigmaPlannerResponse(text: string): TalkToFigmaPlannerResponse;
/**
 * @description 도구 인자를 사람이 읽기 좋은 JSON 문자열로 직렬화한다.
 * @param value 도구 인자
 * @returns pretty JSON 문자열
 */
export declare function stringifyTalkToFigmaArguments(value: Record<string, unknown>): string;
//# sourceMappingURL=planner.d.ts.map