import * as Core from 'cloudflaredev/core';
import { APIResource } from 'cloudflaredev/resource';
import * as FleetStatusAPI from 'cloudflaredev/resources/zero-trust/dex/fleet-status/fleet-status';
import * as DevicesAPI from 'cloudflaredev/resources/zero-trust/dex/fleet-status/devices';
export declare class FleetStatus extends APIResource {
    devices: DevicesAPI.Devices;
    /**
     * List details for live (up to 60 minutes) devices using WARP
     */
    live(params: FleetStatusLiveParams, options?: Core.RequestOptions): Core.APIPromise<FleetStatusLiveResponse>;
    /**
     * List details for devices using WARP, up to 7 days
     */
    overTime(params: FleetStatusOverTimeParams, options?: Core.RequestOptions): Core.APIPromise<void>;
}
export interface LiveStat {
    /**
     * Number of unique devices
     */
    uniqueDevicesTotal?: number;
    value?: string;
}
export interface FleetStatusLiveResponse {
    deviceStats?: FleetStatusLiveResponse.DeviceStats;
}
export declare namespace FleetStatusLiveResponse {
    interface DeviceStats {
        byColo?: Array<FleetStatusAPI.LiveStat> | null;
        byMode?: Array<FleetStatusAPI.LiveStat> | null;
        byPlatform?: Array<FleetStatusAPI.LiveStat> | null;
        byStatus?: Array<FleetStatusAPI.LiveStat> | null;
        byVersion?: Array<FleetStatusAPI.LiveStat> | null;
        /**
         * Number of unique devices
         */
        uniqueDevicesTotal?: number;
    }
}
export interface FleetStatusLiveParams {
    /**
     * Path param:
     */
    account_id: string;
    /**
     * Query param: Number of minutes before current time
     */
    since_minutes: number;
}
export interface FleetStatusOverTimeParams {
    /**
     * Path param:
     */
    account_id: string;
    /**
     * Query param: Timestamp in ISO format
     */
    time_end: string;
    /**
     * Query param: Timestamp in ISO format
     */
    time_start: string;
    /**
     * Query param: Cloudflare colo
     */
    colo?: string;
    /**
     * Query param: Device-specific ID, given as UUID v4
     */
    device_id?: string;
}
export declare namespace FleetStatus {
    export import LiveStat = FleetStatusAPI.LiveStat;
    export import FleetStatusLiveResponse = FleetStatusAPI.FleetStatusLiveResponse;
    export import FleetStatusLiveParams = FleetStatusAPI.FleetStatusLiveParams;
    export import FleetStatusOverTimeParams = FleetStatusAPI.FleetStatusOverTimeParams;
    export import Devices = DevicesAPI.Devices;
    export import DeviceListResponse = DevicesAPI.DeviceListResponse;
    export import DeviceListResponsesV4PagePaginationArray = DevicesAPI.DeviceListResponsesV4PagePaginationArray;
    export import DeviceListParams = DevicesAPI.DeviceListParams;
}
//# sourceMappingURL=fleet-status.d.ts.map