export declare type JsonValue = null | string | number | boolean | { [x: string]: JsonValue; } | JsonValue[]; export declare namespace Json { function readNumber(obj: unknown): number | undefined; function readInt(obj: unknown): number | undefined; function readString(obj: unknown): string | undefined; function readBoolean(obj: unknown): boolean | undefined; function readObject(obj: JsonValue | undefined): { [x: string]: JsonValue | undefined; } | undefined; function readObject(obj: unknown): { [x: string]: unknown; } | undefined; function readArray(obj: JsonValue | undefined, parser: (obj?: JsonValue) => T): T[] | undefined; function readArray(obj: JsonValue | undefined): (JsonValue | undefined)[] | undefined; function readArray(obj: unknown, parser: (obj: unknown) => T): T[] | undefined; function readPair(obj: unknown, parser: (obj?: unknown) => T): [T, T] | undefined; function readMap(obj: JsonValue | undefined, parser: (obj?: JsonValue) => T): { [x: string]: T; }; function readMap(obj: unknown, parser: (obj: unknown) => T): { [x: string]: T; }; function compose(obj: unknown, parser: ((obj: unknown) => T | undefined), mapper: (result: T) => U): U | undefined; function readEnum(obj: unknown, values: readonly T[]): T; } //# sourceMappingURL=Json.d.ts.map