import * as svelte_store from 'svelte/store';
import { Zip6Result } from '../zip6/index.js';

interface SearchResult {
    city: string;
    area: string;
    road: string;
}
declare function createTwZip6(): {
    cities: svelte_store.Readable<string[]>;
    areas: svelte_store.Writable<string[]>;
    roads: svelte_store.Writable<string[]>;
    city: svelte_store.Writable<string>;
    area: svelte_store.Writable<string>;
    road: svelte_store.Writable<string>;
    number: svelte_store.Writable<number | undefined>;
    lane: svelte_store.Writable<number | undefined>;
    alley: svelte_store.Writable<number | undefined>;
    setCity: (value: string) => 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;
    searchResults: svelte_store.Writable<SearchResult[]>;
    zipCode: svelte_store.Readable<string>;
    zip3: svelte_store.Readable<string>;
    result: svelte_store.Readable<Zip6Result | undefined>;
};

declare function createTwZip(): {
    cities: svelte_store.Readable<string[]>;
    districts: svelte_store.Writable<{
        [key: string]: string;
    }[]>;
    city: svelte_store.Writable<string>;
    district: svelte_store.Readable<string>;
    zipCode: svelte_store.Writable<string>;
    setCity: (value: string) => void;
    setDistrict: (value: string) => void;
    setZipCode: (value: string) => void;
};

export { type SearchResult, createTwZip, createTwZip6, createTwZip as default };
