import type { COUNTRY_CODE_TO_CONTINENT_CODE } from './constants';
export type Capabilities = 'Backups' | 'Bare Metal' | 'Block Storage' | 'Block Storage Encryption' | 'Block Storage Migrations' | 'Cloud Firewall' | 'Disk Encryption' | 'Distributed Plans' | 'GPU Linodes' | 'Kubernetes' | 'Kubernetes Enterprise' | 'LA Disk Encryption' | 'Linode Interfaces' | 'Linodes' | 'Maintenance Policy' | 'Managed Databases' | 'Metadata' | 'NETINT Quadra T1U' | 'NodeBalancers' | 'Object Storage' | 'Placement Group' | 'Premium Plans' | 'StackScripts' | 'Vlans' | 'VPCs';
export interface DNSResolvers {
    ipv4: string;
    ipv6: string;
}
export type RegionStatus = 'ok' | 'outage';
export type RegionSite = 'core' | 'distributed';
export interface Region {
    capabilities: Capabilities[];
    country: Country;
    id: string;
    label: string;
    placement_group_limits: {
        maximum_linodes_per_pg: number;
        maximum_pgs_per_customer: null | number;
    };
    resolvers: DNSResolvers;
    site_type: RegionSite;
    status: RegionStatus;
}
export interface RegionAvailability {
    available: boolean;
    plan: string;
    region: string;
}
type CountryCode = keyof typeof COUNTRY_CODE_TO_CONTINENT_CODE;
export type Country = Lowercase<CountryCode>;
export {};
//# sourceMappingURL=types.d.ts.map