import { PMOCommand } from '../../lib/pmo/index.js';
/**
 * Canonical question format regex for parsing Q1/Q2/etc from descriptions.
 *
 * Matches patterns like:
 *   **Q1:** What should the timeout be?
 *   **Q2:** Should we use REST or GraphQL?
 *   Q1: What should the timeout be?
 *   Q3: How should errors be handled?
 *
 * Captures:
 *   - Group 1: Question number (e.g., "1", "2")
 *   - Group 2: Question text
 */
export declare const QUESTION_REGEX: RegExp;
/**
 * Canonical answer format for resolved questions.
 *
 * Matches patterns like:
 *   **A1:** Use 30 minute timeout
 *   A1: Use 30 minute timeout
 */
export declare const ANSWER_REGEX: RegExp;
export interface ParsedQuestion {
    /** Question number (e.g., 1, 2, 3) */
    number: number;
    /** The question text */
    text: string;
    /** Line index in the description where the question appears */
    lineIndex: number;
    /** Whether this question already has an answer */
    answered: boolean;
}
/**
 * Parse questions (Q1/Q2/etc) from a ticket description.
 *
 * @param description - The ticket description markdown
 * @returns Array of parsed questions
 */
export declare function parseQuestions(description: string): ParsedQuestion[];
/**
 * Rewrite a ticket description by injecting answers below each question.
 *
 * For each answered question, inserts a line like:
 *   **A1:** The answer text
 *
 * If an answer already exists for that question, it is replaced.
 *
 * @param description - The original ticket description
 * @param answers - Map of question number to answer text
 * @returns The rewritten description
 */
export declare function rewriteDescription(description: string, answers: Map<number, string>): string;
export default class TicketResolve extends PMOCommand {
    static description: string;
    static examples: string[];
    static strict: boolean;
    static args: {
        ticketId: import("@oclif/core/interfaces").Arg<string | undefined, Record<string, unknown>>;
    };
    static flags: {
        json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
        machine: import("@oclif/core/interfaces").BooleanFlag<boolean>;
        project: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
    };
    execute(): Promise<void>;
    private resolveTicket;
}
