export type RecentlyViewedDocumentsOptions = {
    readonly nDocuments: number;
    readonly maxTokens: number;
    readonly includeViewedFiles: boolean;
};
export type LanguageContextLanguages = {
    [languageId: string]: boolean;
};
export type LanguageContextOptions = {
    readonly enabled: boolean;
    readonly maxTokens: number;
};
export type DiffHistoryOptions = {
    readonly nEntries: number;
    readonly maxTokens: number;
    readonly onlyForDocsInPrompt: boolean;
    readonly useRelativePaths: boolean;
};
export type PagedClipping = {
    pageSize: number;
};
export type CurrentFileOptions = {
    readonly maxTokens: number;
    readonly includeTags: boolean;
    readonly prioritizeAboveCursor: boolean;
};
export type PromptOptions = {
    readonly promptingStrategy: PromptingStrategy | undefined;
    readonly currentFile: CurrentFileOptions;
    readonly pagedClipping: PagedClipping;
    readonly recentlyViewedDocuments: RecentlyViewedDocumentsOptions;
    readonly languageContext: LanguageContextOptions;
    readonly diffHistory: DiffHistoryOptions;
    readonly includePostScript: boolean;
};
/**
 * Prompt strategies that tweak prompt in a way that's different from current prod prompting strategy.
 */
export declare enum PromptingStrategy {
    /**
     * Original Xtab unified model prompting strategy.
     */
    UnifiedModel = "xtabUnifiedModel",
    Codexv21NesUnified = "codexv21nesUnified",
    Nes41Miniv3 = "nes41miniv3",
    SimplifiedSystemPrompt = "simplifiedSystemPrompt",
    Xtab275 = "xtab275"
}
export declare enum ResponseFormat {
    CodeBlock = "codeBlock",
    UnifiedWithXml = "unifiedWithXml",
    EditWindowOnly = "editWindowOnly"
}
export declare namespace ResponseFormat {
    function fromPromptingStrategy(strategy: PromptingStrategy | undefined): ResponseFormat;
}
export declare const DEFAULT_OPTIONS: PromptOptions;
export declare const LANGUAGE_CONTEXT_ENABLED_LANGUAGES: LanguageContextLanguages;
export interface ModelConfiguration {
    modelName: string;
    promptingStrategy: PromptingStrategy | undefined;
    includeTagsInCurrentFile: boolean;
}
export declare const MODEL_CONFIGURATION_VALIDATOR: import("../../../configuration/common/validator").IValidator<{
    modelName: string;
    promptingStrategy: PromptingStrategy | undefined;
    includeTagsInCurrentFile: boolean;
}>;
//# sourceMappingURL=xtabPromptOptions.d.ts.map