/**
 * Markdown Generator for Living Docs
 *
 * Generates markdown content for User Stories imported from external tools.
 * Extracted from item-converter.ts to reduce file size and improve maintainability.
 *
 * @module importers/markdown-generator
 */
import type { ExternalItem } from './external-importer.js';
/**
 * Task data for checkbox rendering (v0.30.3+)
 */
export interface TaskData {
    /** Task ID (e.g., "T-001") */
    id: string;
    /** Task title/description */
    title: string;
    /** Task status - determines checkbox state */
    status: 'pending' | 'in_progress' | 'completed' | 'done' | 'closed';
}
/**
 * User Story markdown data
 */
export interface UserStoryMarkdownData {
    id: string;
    title: string;
    description: string;
    acceptanceCriteria: string[];
    priority?: string;
    status: string;
    originBadge: string;
    /** Tasks as checkbox items (v0.30.3+) */
    tasks?: TaskData[];
    metadata: {
        externalId: string;
        externalUrl: string;
        externalPlatform: string;
        importedAt: string;
        createdAt: string;
        updatedAt: string;
        labels: string[];
        sourceRepo?: string;
        parentId?: string;
        featureId?: string;
        isOrphan?: boolean;
        adoWorkItemType?: string;
        adoAreaPath?: string;
    };
}
/**
 * MarkdownGenerator - Generates markdown for living docs
 */
export declare class MarkdownGenerator {
    /**
     * Generate origin badge for living docs
     */
    generateOriginBadge(item: ExternalItem): string;
    /**
     * Map external status to SpecWeave status
     */
    mapStatus(externalStatus: ExternalItem['status']): string;
    /**
     * Generate markdown content for living docs User Story
     * CRITICAL: Includes parent tracking info for re-import hierarchy updates
     */
    generateUserStoryMarkdown(data: UserStoryMarkdownData, projectId?: string): string;
    /**
     * Generate file name for living docs User Story
     *
     * Format: us-001e-title-here.md
     */
    generateFileName(usId: string, title: string): string;
    /**
     * Generate FEATURE.md content for a feature folder
     */
    generateFeatureMarkdown(featureId: string, firstItem: ExternalItem, options?: {
        isOrphanGroup?: boolean;
        isAdoFeatureLevelItem?: boolean;
        parentEpicId?: string;
    }): string;
    private getPlatformLabel;
    private getFeatureMetadata;
    private buildFeatureMarkdown;
}
export declare const markdownGenerator: MarkdownGenerator;
//# sourceMappingURL=markdown-generator.d.ts.map