/**
 * locales/timeAsk — the time ask's sentences, for the PERSON answering it
 * (time design § 6.2, TQ7).
 *
 * The library validates a time field's answer (`time/ask.ts` ·
 * `checkTimeAnswer`), so a refused answer needs a reason — and the reason is a
 * sentence a person reads on the re-ask (`InputRefusal.reason`), never text
 * for the model. It lives here, as data, so an app can translate or reword
 * every key: `.time({ messages: { 'answer.no-offset': '…' } })` overrides a
 * key, and the rest fall back to these. Placeholders are `{{name}}`:
 *
 * | Key | Placeholders |
 * |-----|--------------|
 * | `answer.not-an-instant`, `answer.no-offset`, `answer.not-a-range`, `answer.not-a-zone` | `value` — the answer as given (cut at 64 characters) |
 * | `answer.out-of-order` | `from`, `to` |
 * | `answer.dst-gap` | `value`, `wall` (the wall time as written), `zone` |
 * | `answer.time-future`, `answer.time-past` | `from`, `to` |
 * | `answer.beyond-retention` | `from`, `to`, `retention` (the source's, as declared) |
 * | `answer.over-max-range` | `from`, `to`, `maxRange` (the source's, as declared) |
 * | `ask.which`, `ask.confirm` | `quote` — the person's words the reading came from |
 * | `ask.zone` | `quote`, `token` — the zone they wrote |
 * | `ask.zone-unknown` | `quote` — words that name no zone, while the person's zone is unknown (G15) |
 * | `choice.confirm` | `quote`, `window` — the label of a reading to confirm (every reading the armed reader made — the pre-filled choice); `zone` — the zone it was read in |
 *
 * Only a check the app armed can produce one of these: a field with a
 * `format`, or the choices of a reading under `.time()`.
 */
import type { TimeAskMessages } from '../time/ask.js';
/** The time ask's English sentences — one per `TIME_ASK_MESSAGE_KEYS` key. */
export declare const defaultTimeAskMessages: TimeAskMessages;
//# sourceMappingURL=timeAsk.d.ts.map