export interface Country {
    code: string;
    name: string;
    iso3: string;
    flagEmoji: string | null;
}
export interface CountryDetailed extends Country {
    state: State[];
    city: City[];
    phoneCodes: DialingCode[];
    timezones: Timezone[];
    currency?: Currency | null;
}
export interface State {
    id: number;
    name: string;
    iso2?: string | null;
    iso3?: string | null;
}
export interface StateDetailed extends State {
    country: Country | null;
    city: City[];
    dialingCode?: DialingCode | null;
    timezones: Timezone[];
    currency?: Currency | null;
}
export interface City {
    id: number;
    name: string;
}
export interface CityDetailed extends City {
    country: Country | null;
    state: State | null;
    timezone?: Timezone | null;
}
export interface Currency {
    code: string;
    name: string;
    symbol: string;
    decimalPlaces: number;
}
export interface CurrencyDetailed extends Currency {
    countries: Country[];
    states: State[];
}
export interface DialingCode {
    code: string;
    root: string;
    suffix: string;
    example: string | null;
}
export interface DialingCodeDetailed extends DialingCode {
    country: Country;
    states: State[];
}
export interface Timezone {
    name: string;
    offset: string;
    offsetMinutes: number;
}
export interface TimezoneDetailed extends Timezone {
    countries: Country[];
    states: State[];
}
//# sourceMappingURL=index.d.ts.map