import type { ObjectDeserializer, StringEnumDeserializer } from './types'; type Optional = T | undefined; export declare class Deserialization { static checkObject(val: any): object; static requiredNumber(name: string, serializedData: object): number; static repeatedNumber(name: string, serializedData: object): Optional; static optionalNumber(name: string, serializedData: object): Optional; static requiredString(name: string, serializedData: object): string; static optionalString(name: string, serializedData: object): Optional; static repeatedString(name: string, serializedData: object): Optional; static requiredBoolean(name: string, serializedData: object): boolean; static optionalBoolean(name: string, serializedData: object): Optional; static repeatedBoolean(name: string, serializedData: object): Optional; static requiredObject(deserialize: ObjectDeserializer, name: string, serializedData: object): T; static optionalObject(deserialize: ObjectDeserializer, name: string, serializedData: object): Optional; static repeatedObject(deserialize: ObjectDeserializer, name: string, serializedData: object): Optional; static requiredStringEnum(deserialize: StringEnumDeserializer, name: string, serializedData: object): T; static optionalStringEnum(deserialize: StringEnumDeserializer, name: string, serializedData: object): Optional; static repeatedStringEnum(deserialize: StringEnumDeserializer, name: string, serializedData: object): Optional; static numberObjectMap(deserialize: ObjectDeserializer, name: string, serializedData: object): Optional>; static stringNumberMap(name: string, serializedData: object): Optional>; static stringObjectMap(deserialize: ObjectDeserializer, name: string, serializedData: object): Optional>; static stringEnumMap(deserialize: StringEnumDeserializer, name: string, serializedData: object): Optional>; static stringStringMap(name: string, serializedData: object): Optional>; static numberNumberMap(name: string, serializedData: object): Optional>; static numberStringMap(name: string, serializedData: object): Optional>; private static map; private static numberMapKey; private static stringMapKey; private static numberMapValue; private static objectMapValue; private static stringMapValue; private static enumMapValue; private static isObject; } export {};