/** * Runtime validation schema and wrapper for OS-native TTS adapter options. * * @module @nhtio/adk/batteries/tts/native/validation * * @remarks * Validates `NativeTtsAdapterOptions` at construction time. Throws * {@link @nhtio/adk/batteries/tts/native!E_INVALID_NATIVE_TTS_OPTIONS} on failure. Every field is * optional — a zero-config `new NativeTtsAdapter()` is valid and auto-detects the platform — but * unknown top-level keys are rejected (`.unknown(false)`) so typos fail loud. The seam functions * (`executor`/`fs`/`tmpdir`/`randomName`/`isAvailable`) are accepted as bare functions (or, for * `fs`/`executor`, an object whose members are functions) so unit tests can inject fakes. */ import type { NativeTtsAdapterOptions } from "./types"; /** * Validator schema for `NativeTtsAdapterOptions`. Every field is optional; unknown top-level keys * are rejected. Seam functions are accepted as-is. */ export declare const nativeTtsOptionsSchema: import("@nhtio/validation").ObjectSchema; /** * Validates an arbitrary input against {@link nativeTtsOptionsSchema}. * * @param input - The raw options object to validate (pass `{}` for zero-config). * @returns The resolved options object (typed as {@link NativeTtsAdapterOptions}). * @throws {@link @nhtio/adk/batteries/tts/native!E_INVALID_NATIVE_TTS_OPTIONS} when invalid. */ export declare const validateOptions: (input: unknown) => NativeTtsAdapterOptions;