import type { AgentModelRequirements } from '../../book-2.0/agent-source/AgentModelRequirements';
import { BaseCommitmentDefinition } from '../_base/BaseCommitmentDefinition';
/**
 * FORMAT commitment definition
 *
 * Deprecated legacy commitment for output formatting and response structure.
 * New books should prefer `WRITING SAMPLE` and `WRITING RULES`.
 *
 * Legacy example usage in agent source:
 *
 * ```book
 * FORMAT Always respond in JSON format with 'status' and 'data' fields
 * FORMAT Use markdown formatting for all code blocks
 * ```
 *
 * @private [🪔] Maybe export the commitments through some package
 */
export declare class FormatCommitmentDefinition extends BaseCommitmentDefinition<'FORMAT' | 'FORMATS'> {
    constructor(type?: 'FORMAT' | 'FORMATS');
    /**
     * Short one-line description of FORMAT.
     */
    get description(): string;
    /**
     * Optional UI/docs-only deprecation metadata.
     */
    get deprecation(): {
        readonly message: "Use `WRITING SAMPLE` and `WRITING RULES` instead.";
        readonly replacedBy: readonly ["WRITING SAMPLE", "WRITING RULES"];
    };
    /**
     * Icon for this commitment.
     */
    get icon(): string;
    /**
     * Markdown documentation for FORMAT commitment.
     */
    get documentation(): string;
    applyToAgentModelRequirements(requirements: AgentModelRequirements, content: string): AgentModelRequirements;
}
