/** * Tiny structural helpers for reading untyped JSON — the shape every raw * Feishu event payload arrives in. Used across the event parsers, which * decode their payloads defensively. `isRecord`/`asString` are ported * verbatim from claudemux. */ /** True when `v` is a non-null object, and therefore safe to index. */ export declare function isRecord(v: unknown): v is Record; /** `v` when it is a string, otherwise the empty string. */ export declare function asString(v: unknown): string; /** * `v` narrowed to a plain object, excluding arrays — every event field this * package reads by key expects an object, not a list. */ export declare function asRecord(v: unknown): Record | undefined; /** The first string among `values`, or the empty string when none is one. */ export declare function firstString(...values: unknown[]): string; //# sourceMappingURL=json.d.ts.map