/**
 * Configuration interface for the persona active indicator system.
 * Controls how persona information is displayed in AI responses.
 *
 * @interface IndicatorConfig
 * @example
 * ```typescript
 * const config: IndicatorConfig = {
 *   enabled: true,
 *   style: 'full',
 *   showEmoji: true,
 *   showName: true,
 *   showVersion: true,
 *   showAuthor: true,
 *   showCategory: false,
 *   separator: ' | ',
 *   emoji: '🎭',
 *   bracketStyle: 'square'
 * };
 * ```
 */
export interface IndicatorConfig {
    /** Whether to show the indicator at all */
    enabled: boolean;
    /** Format style: 'full', 'minimal', 'compact', 'custom' */
    style: 'full' | 'minimal' | 'compact' | 'custom';
    /**
     * Custom format template (used when style is 'custom')
     * Available placeholders: {emoji}, {name}, {version}, {author}, {category}
     */
    customFormat?: string;
    /** Whether to include specific elements */
    showEmoji: boolean;
    showName: boolean;
    showVersion: boolean;
    showAuthor: boolean;
    showCategory: boolean;
    /** Separator between indicator and response */
    separator: string;
    /** Emoji to use (defaults to 🎭) */
    emoji: string;
    /** Bracket style: 'square', 'round', 'curly', 'angle', 'none' */
    bracketStyle: 'square' | 'round' | 'curly' | 'angle' | 'none';
}
export declare const DEFAULT_INDICATOR_CONFIG: IndicatorConfig;
export declare const INDICATOR_STYLES: {
    full: string;
    minimal: string;
    compact: string;
    custom: string;
};
export declare const BRACKETS: {
    square: {
        open: string;
        close: string;
    };
    round: {
        open: string;
        close: string;
    };
    curly: {
        open: string;
        close: string;
    };
    angle: {
        open: string;
        close: string;
    };
    none: {
        open: string;
        close: string;
    };
};
/**
 * Load indicator configuration from environment variables or use defaults.
 * Environment variables take precedence over default values.
 *
 * @returns {IndicatorConfig} The loaded configuration
 * @example
 * ```typescript
 * // Set environment variables before loading
 * process.env.DOLLHOUSE_INDICATOR_STYLE = 'minimal';
 * process.env.DOLLHOUSE_INDICATOR_EMOJI = '🤖';
 *
 * const config = loadIndicatorConfig();
 * // config.style === 'minimal'
 * // config.emoji === '🤖'
 * ```
 */
export declare function loadIndicatorConfig(): IndicatorConfig;
/**
 * Validate custom format template for valid placeholders
 */
export declare function validateCustomFormat(format: string): {
    valid: boolean;
    error?: string;
};
/**
 * Format the indicator based on configuration and persona metadata
 */
export declare function formatIndicator(config: IndicatorConfig, metadata: {
    name: string;
    version?: string;
    author?: string;
    category?: string;
}): string;
//# sourceMappingURL=indicator-config.d.ts.map