import * as React from 'react'; export declare type City = { id?: string | number; country?: string; province?: string; name?: string; type?: 'domestic' | 'foreign'; [key: string]: any; }; export declare const BorderTypes: ["none", "underline", "bordered"]; export declare type BorderType = typeof BorderTypes[number]; export declare const Sizes: ["large", "middle", "small"]; export declare type Size = typeof Sizes[number]; export declare type Type = 'domestic' | 'foreign'; export declare type CityList = Array; export interface CityPickerProps { prefixCls?: string; size?: Size; borderType?: BorderType; notFoundContent?: React.ReactNode; showArrow?: boolean; defaultOpen?: boolean; allowClear?: boolean; placeholder?: React.ReactNode; type?: Type; loading?: boolean; domesticList?: CityList; foreignList?: CityList; commonList?: CityList; className?: string; disabled?: boolean; style?: React.CSSProperties; title?: string; clearIcon?: React.ReactNode; suffixIcon?: React.ReactNode; optionHighlightProps?: string; value?: string | number | City; defaultValue?: string | number; description?: React.ReactNode; showDescription?: boolean; onChange?: (value: string | number, city: City) => void; onBlur?: (e: React.ChangeEvent) => void; onFocus?: () => void; onSearch?: (value: string) => void; onClear?: () => void; itemRender?: (city: City) => React.ReactNode; onTabPaneChange?: (id: Type) => void; } export interface ICityPickerOptionProps { disabled?: boolean; city?: City; value?: string | number; children?: React.ReactNode; className?: string; style?: React.CSSProperties; activeIndex?: number; index: number; direction?: string; onChangeSelect?: (city: City | null) => void; renderCityInfo?: (city: City, flag?: boolean, symbol?: string) => React.ReactNode; itemRender?: (city: City) => React.ReactNode; onChangeActiveIndex?: (index: number) => void; }