/**
 * Content Format Adapter
 *
 * Converts content between formats based on JIRA API version:
 * - API v3 (Cloud): Atlassian Document Format (ADF)
 * - API v2 (Server/DC): Wiki markup
 *
 * @module content-format-adapter
 */
/** ADF document node */
export interface AdfDocument {
    type: 'doc';
    version: 1;
    content: AdfNode[];
}
export interface AdfNode {
    type: string;
    content?: AdfNode[];
    text?: string;
    attrs?: Record<string, any>;
    marks?: Array<{
        type: string;
        attrs?: Record<string, any>;
    }>;
}
/**
 * Convert text/wiki markup to ADF document format.
 */
export declare function toADF(text: string): AdfDocument;
/**
 * Convert content to wiki markup format (for JIRA Server/DC API v2).
 * If already in wiki markup, returns as-is.
 */
export declare function toWikiMarkup(text: string): string;
/**
 * Format content based on JIRA API version.
 *
 * @param text - Raw text/wiki markup content
 * @param domain - JIRA domain (used to look up cached API version)
 * @returns ADF document for v3/Cloud, wiki markup string for v2/Server
 */
export declare function formatContent(text: string, domain: string): AdfDocument | string;
/**
 * Format a description field for JIRA issue create/update payload.
 *
 * @param text - Raw description text
 * @param domain - JIRA domain
 * @returns Properly formatted description for the API version
 */
export declare function toDescription(text: string, domain: string): AdfDocument | string;
/**
 * Format a comment body for JIRA issue comment payload.
 *
 * @param text - Raw comment text
 * @param domain - JIRA domain
 * @returns Properly formatted comment body for the API version
 */
export declare function toCommentBody(text: string, domain: string): AdfDocument | string;
//# sourceMappingURL=content-format-adapter.d.ts.map