export interface PincodeData { district: string; block: string; state: string; officename?: string; circlename?: string; regionname?: string; divisionname?: string; } export interface PincodeSearchResult extends PincodeData { pincode: number; } /** * Loads pincode data with in-memory caching */ export declare function loadPincodeData(): { [key: string]: PincodeData; }; /** * Clear all cached data */ export declare function clearCache(): void; /** * Get full address details for a pincode * @param pincode 6-digit PIN code * @returns Address object or null if not found * @throws Error if the pincode is not a valid 6-digit number. */ export declare function pinToAddress(pincode: number): PincodeData | null; /** * Get state for a pincode * @param pincode 6-digit PIN code * @returns State name or null if not found * @throws Error if the pincode is not a valid 6-digit number. */ export declare function pinToState(pincode: number): string | null; /** * Get district for a pincode * @param pincode 6-digit PIN code * @returns District name or null if not found * @throws Error if the pincode is not a valid 6-digit number. */ export declare function pinToDistrict(pincode: number): string | null; /** * Get taluka/block for a pincode * @param pincode 6-digit PIN code * @returns Taluka/Block name or null if not found * @throws Error if the pincode is not a valid 6-digit number. */ export declare function pinToTaluka(pincode: number): string | null; /** * Search district, block, and officename for a case-insensitive substring match. * @param name Search query * @returns Matching address objects with pincode included, sorted ascending by pincode */ export declare function searchPincodes(name: string): PincodeSearchResult[];