export type Modality = 'chat' | 'embedding' | 'transcription' | 'speech' | 'image'; export interface ServeModelEntry { model?: string; src?: string; type?: string; preload?: boolean; config?: Record; } export interface BuiltEntry { /** Basis for the alias (a constant name); the caller kebabs + dedupes it. */ aliasBase: string; entry: ServeModelEntry; /** SDK addon, for resolving the docs link. */ addon: string; } export interface ModalityInfo { id: Modality; label: string; /** endpointCategory used to filter the catalog. */ role: string; addon: string; /** true → user searches/picks a real constant; false → fixed template. */ pick: boolean; } export declare const MODALITIES: ModalityInfo[]; export declare function modalityInfo(id: Modality): ModalityInfo; /** Curated recommended constant per pick-able modality (smallest well-known). */ export declare const RECOMMENDED: Partial>; /** Non-interactive `--yes` default: ≥2 modalities, both fully runnable. */ export declare const DEFAULT_STARTER: Modality[]; export declare const TTS_VOICE_PLACEHOLDER = "/path/to/voice.wav"; /** Build a serve.models entry for a modality. For pick-able modalities pass the * chosen constant name; for `speech` the constant is ignored (fixed template). */ export declare function buildEntry(modality: Modality, constantName?: string): BuiltEntry; /** Generic entry for a model picked via "search all" (no modality-specific * config). `addon` drives the docs link. */ export declare function buildGenericEntry(constantName: string, addon: string | null): BuiltEntry; export interface AddedEntry { alias: string; addon: string; entry: ServeModelEntry; } /** Turn modality selections into aliased serve.models additions, deduping * aliases against `taken` (mutated as it goes). Used by the non-interactive path. */ export declare function buildAdditions(selections: Array<{ modality: Modality; constantName?: string; }>, taken: Set): AddedEntry[]; /** Kebab-case a constant name into an alias, deduped against `taken`. */ export declare function aliasFor(base: string, taken: Set): string; //# sourceMappingURL=presets.d.ts.map