/** * Date-format converters for upstreams that don't speak ISO 8601, so an MCP can * keep its surface ISO (`yyyy-MM-dd`) and translate at the API boundary. * * Pair with {@link deepMapStringField} (from the `response` module) to rewrite a * date field throughout a response, e.g. * `deepMapStringField(data, 'eventDate', dmyToIso)`. */ /** ISO `yyyy-MM-dd` → `dd-MM-yyyy`. Non-ISO input is trimmed and passed through. */ export declare function isoToDmy(date: string): string; /** `dd-MM-yyyy` → ISO `yyyy-MM-dd`. Non-matching input is trimmed and passed through. */ export declare function dmyToIso(date: string): string; /** * ISO `yyyy-MM-dd` (or `yyyy-MM-ddTHH:mm[:ss]`) → a compact `yyyyMMddHHmmss` * stamp. A bare date gets `000000`; an already-14-digit value passes through; * anything else is trimmed and passed through. */ export declare function isoToCompactTimestamp(value: string): string; /** * Today's date in the **local** timezone as ISO `yyyy-MM-dd`. This is the one * place a `Date` is deliberately read with local getters — "today" for a user * booking a reservation means their wall-clock date, not UTC (resy's * `todayYMD`). Pass a `Date` to pin the clock (tests). */ export declare function todayIso(now?: Date): string; /** * A `Date`'s **UTC** calendar date as ISO `yyyy-MM-dd` — the UTC counterpart of * {@link todayIso} for APIs whose day boundaries are UTC (creditkarma's * `utcDateString`). */ export declare function toIsoDateUtc(d: Date): string; /** * Shift an ISO `yyyy-MM-dd` date by `days` (negative to go back), staying * calendar-correct across month/year boundaries and leap days. The arithmetic * runs entirely in UTC so a behind-UTC local zone can't shift the result (the * classic date-only off-by-one). Non-ISO input is trimmed and passed through, * matching the module convention. */ export declare function shiftIsoDate(date: string, days: number): string; /** * Normalize a time to `HH:MM:SS`: a bare `HH:MM` gains `:00`, an `HH:MM:SS` * passes through, anything else is trimmed and passed through. The inverse * direction of the zod module's `extractTime` (which trims seconds OFF), for * upstreams that require the seconds field (resy's `padSeconds`). */ export declare function ensureSeconds(time: string): string; //# sourceMappingURL=index.d.ts.map