china-location
Version:
Chinese Administrative Division information, 中国行政区划信息
43 lines (42 loc) • 1.71 kB
TypeScript
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<LocationItem>;
currentCities: Array<LocationItem>;
currentDistricts: Array<LocationItem>;
activeProvince: string;
activeCity: string;
activeDistrict: string;
constructor(locationData: any);
getProvinces(): Array<LocationItem>;
getCities(currentProvince: LocationItem): Array<LocationItem>;
getDistricts(currentCity: LocationItem, currentProvince: LocationItem): Array<LocationItem>;
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<LocationItem>;
getCurrentCities(): Array<LocationItem>;
getCurrentDistricts(): Array<LocationItem>;
}
export default ChinaLocation;