UNPKG

@simoko/tw-zip

Version:

台灣縣市、行政區、郵遞區號(3碼/6碼)查詢工具,支援 React/Vue/Svelte/SolidJS/Angular

88 lines (85 loc) 2.61 kB
import * as _angular_core from '@angular/core'; export { clearCache, isCityCached, preloadCities } from '../zip6/loader.cjs'; interface SearchResult { city: string; area: string; road: string; } interface Zip6Result { zipcode: string; zip3: string; city: string; area: string; road: string; } interface TwZip6LazyServiceOptions { /** 資料來源 URL(預設使用 jsDelivr CDN) */ baseUrl?: string; /** 預載入的縣市列表 */ preload?: string[]; } declare class TwZip6LazyService { private readonly baseUrl; private readonly zip3Map; private readonly cityData; private requestId; readonly loading: _angular_core.WritableSignal<boolean>; readonly cities: _angular_core.WritableSignal<string[]>; readonly city: _angular_core.WritableSignal<string>; readonly area: _angular_core.WritableSignal<string>; readonly road: _angular_core.WritableSignal<string>; readonly number: _angular_core.WritableSignal<number | undefined>; readonly lane: _angular_core.WritableSignal<number | undefined>; readonly alley: _angular_core.WritableSignal<number | undefined>; readonly areas: _angular_core.WritableSignal<string[]>; readonly roads: _angular_core.WritableSignal<string[]>; readonly searchResults: _angular_core.WritableSignal<SearchResult[]>; readonly result: _angular_core.Signal<Zip6Result | undefined>; readonly zipCode: _angular_core.Signal<string>; readonly zip3: _angular_core.Signal<string>; /** * 初始化服務(必須在使用前呼叫) */ init(options?: TwZip6LazyServiceOptions): Promise<void>; /** * 設定縣市(會觸發非同步載入) */ setCity(value: string): Promise<void>; /** * 設定行政區 */ setArea(value: string): void; /** * 設定路名 */ setRoad(value: string): void; /** * 設定門牌號碼 */ setNumber(value: number | undefined): void; /** * 設定巷 */ setLane(value: number | undefined): void; /** * 設定弄 */ setAlley(value: number | undefined): void; /** * 搜尋路名(在目前縣市中搜尋) */ searchRoads(keyword: string): void; /** * 預載入縣市資料 */ preloadCities(citiesToPreload: string[]): Promise<void>; /** * 檢查縣市是否已快取 */ isCityCached(city: string): boolean; /** * 清除快取 */ clearCache(): void; } export { type SearchResult, TwZip6LazyService, type TwZip6LazyServiceOptions, type Zip6Result };