import type { CliToolAdapter, ToolModel, ToolSkillsData, UsageInfo } from './types';
import type { ChatBlock } from '../session-manager';
export declare class CodexAdapter implements CliToolAdapter {
    readonly tool = "codex";
    buildCommand(permissionMode: 'limited' | 'unlimited', continueSession: boolean): string;
    supportsContinue(): boolean;
    /**
     * Codex stores sessions in ~/.codex/sessions/{Y}/{M}/{D}/.
     * Unlike Claude, sessions are NOT per-project — callers must scope via
     * `getSessionFilesForProject`, which matches by `cwd` from session_meta.
     */
    getSessionDir(_folderPath: string): string | null;
    /**
     * Find all JSONL files for a given project folder (by matching cwd in session_meta).
     */
    getSessionFilesForProject(folderPath: string): string[];
    parseLineBlocks(line: string): ChatBlock | null;
    getHooksSettingsPath(): string | null;
    getHookEvents(): string[];
    buildHookCommand(): string | null;
    /**
     * Read the `model = "..."` line from ~/.codex/config.toml. config.toml is
     * TOML but we only need one scalar at the top level — simple regex avoids
     * pulling in a TOML parser dep.
     */
    getCurrentModel(): string | null;
    /** Codex 0.122's documented model families. Users can still override via
     *  `/model` slash or `-m` flag — this list just seeds the picker UI. */
    getAvailableModels(): ToolModel[];
    /**
     * Codex Skills live at `~/.codex/skills/<name>/SKILL.md` (user-installed)
     * and `~/.codex/skills/.system/<name>/SKILL.md` (bundled). Each SKILL.md
     * starts with YAML-ish frontmatter containing `name` + `description`.
     *
     * We surface them as `builtin` (.system/) and `custom` (top-level).
     * Codex doesn't have the Claude-style `~/.codex/commands/*.md` user slash
     * commands — Skills are the closest analogue.
     */
    getSkills(): ToolSkillsData | null;
    queryUsage(): Promise<UsageInfo>;
    getProjectInstructionsFilename(): string;
    clearUsageCache(): void;
}
//# sourceMappingURL=codex-adapter.d.ts.map