interface LocationItem { code: string; name?: string; } interface ProvinceLocationItem extends LocationItem { cities: object; } interface CityLocationItem extends LocationItem { districts: object; } interface Address { province: LocationItem; city: LocationItem; district: LocationItem; } declare class ChinaLocation { locationData: object; currentProvinces: Array; currentCities: Array; currentDistricts: Array; activeProvince: string; activeCity: string; activeDistrict: string; constructor(locationData: any); getProvinces(): Array; getCities(currentProvince: LocationItem): Array; getDistricts(currentCity: LocationItem, currentProvince: LocationItem): Array; getProvinceByCode(code: string): ProvinceLocationItem; getCityByCode(cityCode: string, provinceCode: string): CityLocationItem; getDistrictByCode(districtCode: string, cityCode: string, provinceCode: string): string; getCity(code: string, cities: object): CityLocationItem; getDistrict(code: string, districts: object): string; changeLocation(provinceCode: string, cityCode?: string, districtCode?: string): this; changeProvince(provinceCode: string, cityCode?: string, districtCode?: string): void; changeCity(cityCode: string, districtCode?: string): void; changeDistrict(districtCode: string): void; getCurrentAddress(): Address; getCurrentProvinces(): Array; getCurrentCities(): Array; getCurrentDistricts(): Array; } export default ChinaLocation;