/**
 * Types for /api/neighborhood-watch/get-scheme-details endpoint
 */
/**
 * OurWatch provider metadata
 */
export interface OurWatchMetadata {
    /** Scheme status type (e.g., 'active', 'inactive') */
    scheme_status_type?: string;
}
/**
 * Query parameters for scheme details
 */
export interface GetSchemeDetailsQueryParams {
    /** Scheme ID */
    schemeId: string;
    /** Include boundary data */
    includeBoundary?: boolean;
}
/**
 * Neighborhood Watch Scheme response
 */
export interface NeighborhoodWatchSchemeResponse {
    /** Unique identifier */
    id: number;
    /** Provider name (e.g., 'ourwatch') */
    provider: string;
    /** Provider-specific key */
    key: string;
    /** Area ID in format LSOA21::ID */
    areaId: string;
    /** Scheme title */
    title: string;
    /** Record type */
    recordType: string;
    /** Scheme URL */
    url: string;
    /** Country code */
    countryCode: string;
    /** Provider-specific metadata */
    metadata: OurWatchMetadata;
    /** Location coordinates */
    latitude: number;
    longitude: number;
    /** Distance from query point (only in location queries) */
    distance?: number;
    /** Boundary polygon (only in detailed queries) */
    boundary?: any;
    /** Area in square meters (only when boundary is available) */
    area_square_meters?: number;
}
/**
 * Neighborhood watch scheme data
 * @deprecated Use NeighborhoodWatchSchemeResponse instead
 */
export interface NeighborhoodWatchScheme {
    /** Scheme ID */
    id: number;
    /** Provider name */
    provider: string;
    /** Provider-specific key */
    key: string;
    /** Area ID */
    areaId: string;
    /** Scheme title */
    title: string;
    /** Record type */
    recordType: string;
    /** Scheme URL */
    url: string;
    /** Latitude coordinate */
    latitude: number;
    /** Longitude coordinate */
    longitude: number;
    /** Distance from search point (when searching by location) */
    distance?: number;
    /** Country code */
    countryCode: string;
    /** Additional metadata */
    metadata?: Record<string, any>;
    /** Boundary polygon (if available) */
    boundary?: any;
}
/**
 * Neighborhood watch schemes response
 * @deprecated Use route-specific response types instead
 */
export interface NeighborhoodWatchResponse {
    /** Search location (for location queries) */
    location?: {
        /** Longitude */
        lng: number;
        /** Latitude */
        lat: number;
    };
    /** Search radius (for location queries) */
    radius?: number;
    /** Area ID (for area queries) */
    areaId?: string;
    /** Total count of schemes found */
    count: number;
    /** List of schemes */
    schemes: NeighborhoodWatchScheme[];
}
