import { Geographic } from '@vepler/area-reference-types';
export type CoverageQualityType = 'primary' | 'secondary' | 'minimal';
export interface TargetGeographyWithCoverage {
    code: string;
    coveragePercentage?: number;
    containmentType?: CoverageQualityType;
}
export interface EnhancedResolvedGeography extends Geographic.ResolvedGeography {
    targetGeographies?: TargetGeographyWithCoverage[];
}
export interface EnhancedResolveGeographyResponse extends Omit<Geographic.ResolveGeographyResponse, 'result'> {
    result: EnhancedResolvedGeography;
}
export interface ResolveGeographyParams extends Geographic.ResolveGeographyQueryParams {
    inputType?: string;
    spatialStrategy?: 'strict' | 'centroid' | 'intersection' | 'weighted';
    intersectionThreshold?: number;
    maxChildren?: number;
    minCoveragePercentage?: number;
    primaryOnly?: boolean;
    includeCoverageInfo?: boolean;
    allowParentFallback?: boolean;
}
export declare function resolveGeography(params: ResolveGeographyParams): Promise<EnhancedResolveGeographyResponse>;
export interface GetGeographyTypesParams {
    includeExamples?: boolean;
}
export declare function getGeographyTypes(params?: GetGeographyTypesParams): Promise<Geographic.GeographicTypesResponse>;
export type CheckResolutionCapabilityParams = Geographic.CheckResolutionCapabilityQueryParams;
export declare function checkResolutionCapability(params: CheckResolutionCapabilityParams): Promise<Geographic.CheckResolutionCapabilityResponse>;
