import type { ScannerProviderName } from "./providers/provider"; export type NameSlot = "userTitle" | "toolTitle" | "lastPrompt" | "firstUserMessage" | "slug"; export declare const NAME_PRECEDENCE: readonly NameSlot[]; export interface NameSlots { userTitle?: string; toolTitle?: string; lastPrompt?: string; firstUserMessage?: string; slug?: string; } export interface ResolvedSessionName { name: string | null; source: NameSlot | null; } /** * Boilerplate Codex injects as a `user`-role turn. Codex-generic only — prompts a * host passes as argv (Codex has no --system-prompt flag) also land as role:user, * but recognising those is the host's business, not the scanner's. */ export declare function isCodexInjectedContext(text: string): boolean; export declare function isValidNameCandidate(text: string, provider: ScannerProviderName): boolean; export declare function resolveSessionName(slots: NameSlots): ResolvedSessionName; export declare function applyNameCandidate(slots: NameSlots, slot: NameSlot, raw: string | undefined, provider: ScannerProviderName): NameSlots; //# sourceMappingURL=session-name.d.ts.map