/**
 * This file was auto-generated by openapi-typescript.
 * Do not make direct changes to the file.
 */

export interface paths {
    "/api/v1/cameras": {
        parameters: {
            query?: never;
            header?: never;
            path?: never;
            cookie?: never;
        };
        /**
         * List Cameras
         * @description List all cameras.
         */
        get: operations["list_cameras_api_v1_cameras_get"];
        put?: never;
        /**
         * Create Camera
         * @description Create a new camera.
         */
        post: operations["create_camera_api_v1_cameras_post"];
        delete?: never;
        options?: never;
        head?: never;
        patch?: never;
        trace?: never;
    };
    "/api/v1/cameras/{name}": {
        parameters: {
            query?: never;
            header?: never;
            path?: never;
            cookie?: never;
        };
        /**
         * Get Camera
         * @description Get a single camera.
         */
        get: operations["get_camera_api_v1_cameras__name__get"];
        put?: never;
        post?: never;
        /**
         * Delete Camera
         * @description Delete a camera.
         */
        delete: operations["delete_camera_api_v1_cameras__name__delete"];
        options?: never;
        head?: never;
        /**
         * Update Camera
         * @description Partially update a camera.
         */
        patch: operations["update_camera_api_v1_cameras__name__patch"];
        trace?: never;
    };
    "/api/v1/clips": {
        parameters: {
            query?: never;
            header?: never;
            path?: never;
            cookie?: never;
        };
        /**
         * List Clips
         * @description List clips with filtering and keyset pagination.
         */
        get: operations["list_clips_api_v1_clips_get"];
        put?: never;
        post?: never;
        delete?: never;
        options?: never;
        head?: never;
        patch?: never;
        trace?: never;
    };
    "/api/v1/clips/{clip_id}": {
        parameters: {
            query?: never;
            header?: never;
            path?: never;
            cookie?: never;
        };
        /**
         * Get Clip
         * @description Get a single clip.
         */
        get: operations["get_clip_api_v1_clips__clip_id__get"];
        put?: never;
        post?: never;
        /**
         * Delete Clip
         * @description Delete a clip and its storage object.
         */
        delete: operations["delete_clip_api_v1_clips__clip_id__delete"];
        options?: never;
        head?: never;
        patch?: never;
        trace?: never;
    };
    "/api/v1/clips/{clip_id}/media": {
        parameters: {
            query?: never;
            header?: never;
            path?: never;
            cookie?: never;
        };
        /**
         * Get Clip Media
         * @description Stream clip media through HomeSec for in-app playback.
         */
        get: operations["get_clip_media_api_v1_clips__clip_id__media_get"];
        put?: never;
        post?: never;
        delete?: never;
        options?: never;
        head?: never;
        patch?: never;
        trace?: never;
    };
    "/api/v1/clips/{clip_id}/media-token": {
        parameters: {
            query?: never;
            header?: never;
            path?: never;
            cookie?: never;
        };
        get?: never;
        put?: never;
        /**
         * Create Clip Media Token
         * @description Create media playback URL.
         *
         *     When auth is disabled, returns direct media URL with tokenized=False and expires_at=None.
         *     When auth is enabled, returns tokenized URL with tokenized=True and non-null expires_at.
         */
        post: operations["create_clip_media_token_api_v1_clips__clip_id__media_token_post"];
        delete?: never;
        options?: never;
        head?: never;
        patch?: never;
        trace?: never;
    };
    "/api/v1/config": {
        parameters: {
            query?: never;
            header?: never;
            path?: never;
            cookie?: never;
        };
        /**
         * Get Config
         * @description Return full configuration.
         */
        get: operations["get_config_api_v1_config_get"];
        put?: never;
        post?: never;
        delete?: never;
        options?: never;
        head?: never;
        patch?: never;
        trace?: never;
    };
    "/api/v1/diagnostics": {
        parameters: {
            query?: never;
            header?: never;
            path?: never;
            cookie?: never;
        };
        /**
         * Get Diagnostics
         * @description Detailed component diagnostics.
         */
        get: operations["get_diagnostics_api_v1_diagnostics_get"];
        put?: never;
        post?: never;
        delete?: never;
        options?: never;
        head?: never;
        patch?: never;
        trace?: never;
    };
    "/api/v1/health": {
        parameters: {
            query?: never;
            header?: never;
            path?: never;
            cookie?: never;
        };
        /**
         * Get Health
         * @description Versioned health check endpoint.
         */
        get: operations["get_health_api_v1_health_get"];
        put?: never;
        post?: never;
        delete?: never;
        options?: never;
        head?: never;
        patch?: never;
        trace?: never;
    };
    "/api/v1/onvif/discover": {
        parameters: {
            query?: never;
            header?: never;
            path?: never;
            cookie?: never;
        };
        get?: never;
        put?: never;
        /**
         * Discover Onvif Cameras
         * @description Trigger WS-Discovery scan and return discovered ONVIF cameras.
         */
        post: operations["discover_onvif_cameras_api_v1_onvif_discover_post"];
        delete?: never;
        options?: never;
        head?: never;
        patch?: never;
        trace?: never;
    };
    "/api/v1/onvif/probe": {
        parameters: {
            query?: never;
            header?: never;
            path?: never;
            cookie?: never;
        };
        get?: never;
        put?: never;
        /**
         * Probe Onvif Camera
         * @description Probe an ONVIF camera for device info, profiles, and stream URIs.
         */
        post: operations["probe_onvif_camera_api_v1_onvif_probe_post"];
        delete?: never;
        options?: never;
        head?: never;
        patch?: never;
        trace?: never;
    };
    "/api/v1/runtime/reload": {
        parameters: {
            query?: never;
            header?: never;
            path?: never;
            cookie?: never;
        };
        get?: never;
        put?: never;
        /**
         * Reload Runtime
         * @description Trigger runtime reload and return async acceptance outcome.
         */
        post: operations["reload_runtime_api_v1_runtime_reload_post"];
        delete?: never;
        options?: never;
        head?: never;
        patch?: never;
        trace?: never;
    };
    "/api/v1/runtime/status": {
        parameters: {
            query?: never;
            header?: never;
            path?: never;
            cookie?: never;
        };
        /**
         * Get Runtime Status
         * @description Return runtime-manager status.
         */
        get: operations["get_runtime_status_api_v1_runtime_status_get"];
        put?: never;
        post?: never;
        delete?: never;
        options?: never;
        head?: never;
        patch?: never;
        trace?: never;
    };
    "/api/v1/setup/finalize": {
        parameters: {
            query?: never;
            header?: never;
            path?: never;
            cookie?: never;
        };
        get?: never;
        put?: never;
        /**
         * Finalize Setup Endpoint
         * @description Persist finalized setup config and activate runtime in-process.
         */
        post: operations["finalize_setup_endpoint_api_v1_setup_finalize_post"];
        delete?: never;
        options?: never;
        head?: never;
        patch?: never;
        trace?: never;
    };
    "/api/v1/setup/preflight": {
        parameters: {
            query?: never;
            header?: never;
            path?: never;
            cookie?: never;
        };
        get?: never;
        put?: never;
        /**
         * Run Setup Preflight Endpoint
         * @description Run setup preflight checks for onboarding UX.
         */
        post: operations["run_setup_preflight_endpoint_api_v1_setup_preflight_post"];
        delete?: never;
        options?: never;
        head?: never;
        patch?: never;
        trace?: never;
    };
    "/api/v1/setup/status": {
        parameters: {
            query?: never;
            header?: never;
            path?: never;
            cookie?: never;
        };
        /**
         * Get Setup Status Endpoint
         * @description Return setup completion status for onboarding UX.
         */
        get: operations["get_setup_status_endpoint_api_v1_setup_status_get"];
        put?: never;
        post?: never;
        delete?: never;
        options?: never;
        head?: never;
        patch?: never;
        trace?: never;
    };
    "/api/v1/setup/test-connection": {
        parameters: {
            query?: never;
            header?: never;
            path?: never;
            cookie?: never;
        };
        get?: never;
        put?: never;
        /**
         * Test Setup Connection Endpoint
         * @description Run a non-persistent connection test for setup-managed integrations.
         */
        post: operations["test_setup_connection_endpoint_api_v1_setup_test_connection_post"];
        delete?: never;
        options?: never;
        head?: never;
        patch?: never;
        trace?: never;
    };
    "/api/v1/stats": {
        parameters: {
            query?: never;
            header?: never;
            path?: never;
            cookie?: never;
        };
        /**
         * Get Stats
         * @description Return system statistics.
         */
        get: operations["get_stats_api_v1_stats_get"];
        put?: never;
        post?: never;
        delete?: never;
        options?: never;
        head?: never;
        patch?: never;
        trace?: never;
    };
}
export type webhooks = Record<string, never>;
export interface components {
    schemas: {
        /**
         * AlertPolicyConfig
         * @description Alert policy plugin configuration.
         */
        AlertPolicyConfig: {
            /**
             * Backend
             * @default default
             */
            backend: string;
            /** Config */
            config?: {
                [key: string]: unknown;
            } | components["schemas"]["BaseModel"];
            /**
             * Enabled
             * @default true
             */
            enabled: boolean;
        };
        /** BaseModel */
        BaseModel: Record<string, never>;
        /**
         * CameraConfig
         * @description Camera configuration and clip source selection.
         */
        CameraConfig: {
            /**
             * Enabled
             * @default true
             */
            enabled: boolean;
            /** Name */
            name: string;
            source: components["schemas"]["CameraSourceConfig"];
        };
        /** CameraCreate */
        CameraCreate: {
            /**
             * Enabled
             * @default true
             */
            enabled: boolean;
            /** Name */
            name: string;
            /** Source Backend */
            source_backend: string;
            /** Source Config */
            source_config: {
                [key: string]: unknown;
            };
        };
        /** CameraResponse */
        CameraResponse: {
            /** Enabled */
            enabled: boolean;
            /** Healthy */
            healthy: boolean;
            /** Last Heartbeat */
            last_heartbeat: number | null;
            /** Name */
            name: string;
            /** Source Backend */
            source_backend: string;
            /** Source Config */
            source_config: {
                [key: string]: unknown;
            };
        };
        /**
         * CameraSourceConfig
         * @description Camera source configuration wrapper.
         */
        CameraSourceConfig: {
            /** Backend */
            backend: string;
            /** Config */
            config?: {
                [key: string]: unknown;
            } | components["schemas"]["BaseModel"];
        };
        /** CameraStatus */
        CameraStatus: {
            /** Enabled */
            enabled: boolean;
            /** Healthy */
            healthy: boolean;
            /** Last Heartbeat */
            last_heartbeat: number | null;
        };
        /** CameraUpdate */
        CameraUpdate: {
            /** Enabled */
            enabled?: boolean | null;
            /** Source Backend */
            source_backend?: string | null;
            /** Source Config */
            source_config?: {
                [key: string]: unknown;
            } | null;
        };
        /** ClipListResponse */
        ClipListResponse: {
            /** Clips */
            clips: components["schemas"]["ClipResponse"][];
            /** Has More */
            has_more: boolean;
            /** Limit */
            limit: number;
            /** Next Cursor */
            next_cursor: string | null;
        };
        /** ClipMediaTokenResponse */
        ClipMediaTokenResponse: {
            /** Expires At */
            expires_at: string | null;
            /** Media Url */
            media_url: string;
            /** Tokenized */
            tokenized: boolean;
        };
        /** ClipResponse */
        ClipResponse: {
            /** Activity Type */
            activity_type?: string | null;
            /**
             * Alerted
             * @default false
             */
            alerted: boolean;
            /** Camera */
            camera: string;
            /**
             * Created At
             * Format: date-time
             */
            created_at: string;
            /** Detected Objects */
            detected_objects?: string[];
            /** Id */
            id: string;
            /** Risk Level */
            risk_level?: string | null;
            /** Status */
            status: string;
            /** Storage Uri */
            storage_uri?: string | null;
            /** Summary */
            summary?: string | null;
            /** View Url */
            view_url?: string | null;
        };
        /**
         * ClipStatus
         * @description Clip processing status values.
         *
         *     Represents the high-level status of a clip in the processing pipeline.
         * @enum {string}
         */
        ClipStatus: "queued_local" | "uploaded" | "analyzed" | "done" | "error" | "deleted";
        /** ComponentStatus */
        ComponentStatus: {
            /** Error */
            error?: string | null;
            /** Latency Ms */
            latency_ms?: number | null;
            /** Status */
            status: string;
        };
        /** ConfigChangeResponse */
        ConfigChangeResponse: {
            camera?: components["schemas"]["CameraResponse"] | null;
            /**
             * Restart Required
             * @default true
             */
            restart_required: boolean;
            runtime_reload?: components["schemas"]["RuntimeReloadResponse"] | null;
        };
        /**
         * ConfigResponse
         * @description Returns the full config (secrets shown as env var names, not values).
         */
        ConfigResponse: {
            /** Config */
            config: {
                [key: string]: unknown;
            };
        };
        /** DeviceInfoResponse */
        DeviceInfoResponse: {
            /** Firmware Version */
            firmware_version: string;
            /** Hardware Id */
            hardware_id: string;
            /** Manufacturer */
            manufacturer: string;
            /** Model */
            model: string;
            /** Serial Number */
            serial_number: string;
        };
        /** DiagnosticsResponse */
        DiagnosticsResponse: {
            /** Cameras */
            cameras: {
                [key: string]: components["schemas"]["CameraStatus"];
            };
            postgres: components["schemas"]["ComponentStatus"];
            /** Status */
            status: string;
            storage: components["schemas"]["ComponentStatus"];
            /** Uptime Seconds */
            uptime_seconds: number;
        };
        /** DiscoverRequest */
        DiscoverRequest: {
            /**
             * Attempts
             * @default 2
             */
            attempts: number;
            /**
             * Timeout S
             * @default 8
             */
            timeout_s: number;
            /**
             * Ttl
             * @default 4
             */
            ttl: number;
        };
        /** DiscoveredCameraResponse */
        DiscoveredCameraResponse: {
            /** Ip */
            ip: string;
            /** Scopes */
            scopes: string[];
            /** Types */
            types: string[];
            /** Xaddr */
            xaddr: string;
        };
        /**
         * FastAPIServerConfig
         * @description Configuration for the FastAPI server.
         */
        FastAPIServerConfig: {
            /** Api Key Env */
            api_key_env?: string | null;
            /**
             * Auth Enabled
             * @default false
             */
            auth_enabled: boolean;
            /** Cors Origins */
            cors_origins?: string[];
            /**
             * Enabled
             * @default true
             */
            enabled: boolean;
            /**
             * Host
             * @default 0.0.0.0
             */
            host: string;
            /**
             * Port
             * @default 8081
             */
            port: number;
            /**
             * Serve Ui
             * @default false
             */
            serve_ui: boolean;
            /**
             * Ui Dist Dir
             * @default ui/dist
             */
            ui_dist_dir: string;
        };
        /**
         * FilterConfig
         * @description Base filter configuration (plugin-agnostic).
         *
         *     Plugin-specific config is stored in the 'config' field.
         *     - During YAML parsing: dict[str, Any] (preserves all third-party fields)
         *     - After plugin discovery: BaseModel subclass (validated against plugin.config_model)
         *
         *     Note: Plugin names are validated against the registry at runtime via
         *     validate_plugin_names(). This allows third-party plugins via entry points.
         */
        FilterConfig: {
            /** Backend */
            backend: string;
            /** Config */
            config: {
                [key: string]: unknown;
            } | components["schemas"]["BaseModel"];
        };
        /**
         * FinalizeRequest
         * @description Finalize setup by writing the assembled config and applying it in-process.
         */
        FinalizeRequest: {
            alert_policy?: components["schemas"]["AlertPolicyConfig"] | null;
            /** Cameras */
            cameras?: components["schemas"]["CameraConfig"][] | null;
            filter?: components["schemas"]["FilterConfig"] | null;
            /** Notifiers */
            notifiers?: components["schemas"]["NotifierConfig"][] | null;
            server?: components["schemas"]["FastAPIServerConfig"] | null;
            state_store?: components["schemas"]["StateStoreConfig"] | null;
            storage?: components["schemas"]["StorageConfig"] | null;
            /**
             * Validate Only
             * @default false
             */
            validate_only: boolean;
            vlm?: components["schemas"]["VLMConfig"] | null;
        };
        /**
         * FinalizeResponse
         * @description Finalize setup response for onboarding UI.
         */
        FinalizeResponse: {
            /** Config Path */
            config_path: string;
            /** Defaults Applied */
            defaults_applied: string[];
            /** Errors */
            errors: string[];
            /** Restart Requested */
            restart_requested: boolean;
            /** Success */
            success: boolean;
        };
        /** HTTPValidationError */
        HTTPValidationError: {
            /** Detail */
            detail?: components["schemas"]["ValidationError"][];
        };
        /** HealthResponse */
        HealthResponse: {
            /**
             * Bootstrap Mode
             * @default false
             */
            bootstrap_mode: boolean;
            /** Cameras Online */
            cameras_online: number;
            /** Pipeline */
            pipeline: string;
            /** Postgres */
            postgres: string;
            /** Status */
            status: string;
        };
        /** MediaProfileResponse */
        MediaProfileResponse: {
            /** Bitrate Limit Kbps */
            bitrate_limit_kbps: number | null;
            /** Frame Rate Limit */
            frame_rate_limit: number | null;
            /** Height */
            height: number | null;
            /** Name */
            name: string;
            /** Stream Error */
            stream_error: string | null;
            /** Stream Uri */
            stream_uri: string | null;
            /** Token */
            token: string;
            /** Video Encoding */
            video_encoding: string | null;
            /** Width */
            width: number | null;
        };
        /**
         * NotifierConfig
         * @description Notifier configuration entry.
         */
        NotifierConfig: {
            /** Backend */
            backend: string;
            /** Config */
            config?: {
                [key: string]: unknown;
            } | components["schemas"]["BaseModel"];
            /**
             * Enabled
             * @default true
             */
            enabled: boolean;
        };
        /**
         * PreflightCheckResponse
         * @description Single preflight check outcome.
         */
        PreflightCheckResponse: {
            /** Latency Ms */
            latency_ms?: number | null;
            /** Message */
            message: string;
            /** Name */
            name: string;
            /** Passed */
            passed: boolean;
        };
        /**
         * PreflightResponse
         * @description Aggregated preflight response.
         */
        PreflightResponse: {
            /** All Passed */
            all_passed: boolean;
            /** Checks */
            checks: components["schemas"]["PreflightCheckResponse"][];
        };
        /** ProbeRequest */
        ProbeRequest: {
            /** Host */
            host: string;
            /** Password */
            password: string;
            /**
             * Port
             * @default 80
             */
            port: number;
            /**
             * Timeout S
             * @default 15
             */
            timeout_s: number;
            /** Username */
            username: string;
        };
        /** ProbeResponse */
        ProbeResponse: {
            device: components["schemas"]["DeviceInfoResponse"];
            /** Profiles */
            profiles: components["schemas"]["MediaProfileResponse"][];
        };
        /** RuntimeReloadResponse */
        RuntimeReloadResponse: {
            /** Accepted */
            accepted: boolean;
            /** Message */
            message: string;
            /** Target Generation */
            target_generation: number;
        };
        /**
         * RuntimeState
         * @description Lifecycle state for the active runtime.
         * @enum {string}
         */
        RuntimeState: "idle" | "reloading" | "failed";
        /** RuntimeStatusResponse */
        RuntimeStatusResponse: {
            /** Active Config Version */
            active_config_version: string | null;
            /** Generation */
            generation: number;
            /** Last Reload At */
            last_reload_at: string | null;
            /** Last Reload Error */
            last_reload_error: string | null;
            /** Reload In Progress */
            reload_in_progress: boolean;
            state: components["schemas"]["RuntimeState"];
        };
        /**
         * SetupStatusResponse
         * @description Current setup completion state used by onboarding flows.
         */
        SetupStatusResponse: {
            /** Auth Configured */
            auth_configured: boolean;
            /** Has Cameras */
            has_cameras: boolean;
            /** Pipeline Running */
            pipeline_running: boolean;
            /**
             * State
             * @enum {string}
             */
            state: "fresh" | "partial" | "complete";
        };
        /**
         * StateStoreConfig
         * @description State store configuration.
         */
        StateStoreConfig: {
            /** Dsn */
            dsn?: string | null;
            /** Dsn Env */
            dsn_env?: string | null;
        };
        /** StatsResponse */
        StatsResponse: {
            /** Alerts Today */
            alerts_today: number;
            /** Cameras Online */
            cameras_online: number;
            /** Cameras Total */
            cameras_total: number;
            /** Clips Today */
            clips_today: number;
            /** Uptime Seconds */
            uptime_seconds: number;
        };
        /**
         * StorageConfig
         * @description Storage backend configuration.
         */
        StorageConfig: {
            /**
             * Backend
             * @default dropbox
             */
            backend: string;
            /** Config */
            config?: {
                [key: string]: unknown;
            } | components["schemas"]["BaseModel"];
            paths?: components["schemas"]["StoragePathsConfig"];
        };
        /**
         * StoragePathsConfig
         * @description Logical storage paths for different artifact types.
         */
        StoragePathsConfig: {
            /**
             * Artifacts Dir
             * @default artifacts
             */
            artifacts_dir: string;
            /**
             * Backups Dir
             * @default backups
             */
            backups_dir: string;
            /**
             * Clips Dir
             * @default clips
             */
            clips_dir: string;
        };
        /**
         * TestConnectionRequest
         * @description Payload for generic setup test-connection endpoint.
         */
        TestConnectionRequest: {
            /** Backend */
            backend: string;
            /** Config */
            config: {
                [key: string]: unknown;
            };
            /**
             * Type
             * @enum {string}
             */
            type: "camera" | "storage" | "notifier" | "analyzer";
        };
        /**
         * TestConnectionResponse
         * @description Connection test outcome for setup/UI flows.
         */
        TestConnectionResponse: {
            /** Details */
            details?: {
                [key: string]: unknown;
            } | null;
            /** Latency Ms */
            latency_ms?: number | null;
            /** Message */
            message: string;
            /** Success */
            success: boolean;
        };
        /**
         * VLMConfig
         * @description Base VLM configuration.
         *
         *     Backend-specific config is stored in the 'config' field.
         *     - During YAML parsing: dict[str, Any] (preserves all third-party fields)
         *     - After plugin discovery: BaseModel subclass (validated against plugin.config_model)
         *
         *     Note: Backend names are validated against the registry at runtime via
         *     validate_plugin_names(). This allows third-party VLM plugins via entry points.
         */
        VLMConfig: {
            /** Backend */
            backend: string;
            /** Config */
            config: {
                [key: string]: unknown;
            } | components["schemas"]["BaseModel"];
            preprocessing?: components["schemas"]["VLMPreprocessConfig"];
            /** @default trigger_only */
            run_mode: components["schemas"]["VLMRunMode"];
            /** Trigger Classes */
            trigger_classes?: string[];
        };
        /**
         * VLMPreprocessConfig
         * @description Preprocessing configuration for VLM frame extraction.
         */
        VLMPreprocessConfig: {
            /**
             * Max Frames
             * @default 10
             */
            max_frames: number;
            /**
             * Max Size
             * @default 1024
             */
            max_size: number;
            /**
             * Quality
             * @default 85
             */
            quality: number;
        };
        /**
         * VLMRunMode
         * @description Policy for when to run VLM analysis.
         * @enum {string}
         */
        VLMRunMode: "trigger_only" | "always" | "never";
        /** ValidationError */
        ValidationError: {
            /** Context */
            ctx?: Record<string, never>;
            /** Input */
            input?: unknown;
            /** Location */
            loc: (string | number)[];
            /** Message */
            msg: string;
            /** Error Type */
            type: string;
        };
    };
    responses: never;
    parameters: never;
    requestBodies: never;
    headers: never;
    pathItems: never;
}
export type $defs = Record<string, never>;
export interface operations {
    list_cameras_api_v1_cameras_get: {
        parameters: {
            query?: never;
            header?: never;
            path?: never;
            cookie?: never;
        };
        requestBody?: never;
        responses: {
            /** @description Successful Response */
            200: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["CameraResponse"][];
                };
            };
        };
    };
    create_camera_api_v1_cameras_post: {
        parameters: {
            query?: {
                apply_changes?: boolean;
            };
            header?: never;
            path?: never;
            cookie?: never;
        };
        requestBody: {
            content: {
                "application/json": components["schemas"]["CameraCreate"];
            };
        };
        responses: {
            /** @description Successful Response */
            201: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ConfigChangeResponse"];
                };
            };
            /** @description Validation Error */
            422: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["HTTPValidationError"];
                };
            };
        };
    };
    get_camera_api_v1_cameras__name__get: {
        parameters: {
            query?: never;
            header?: never;
            path: {
                name: string;
            };
            cookie?: never;
        };
        requestBody?: never;
        responses: {
            /** @description Successful Response */
            200: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["CameraResponse"];
                };
            };
            /** @description Validation Error */
            422: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["HTTPValidationError"];
                };
            };
        };
    };
    delete_camera_api_v1_cameras__name__delete: {
        parameters: {
            query?: {
                apply_changes?: boolean;
            };
            header?: never;
            path: {
                name: string;
            };
            cookie?: never;
        };
        requestBody?: never;
        responses: {
            /** @description Successful Response */
            200: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ConfigChangeResponse"];
                };
            };
            /** @description Validation Error */
            422: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["HTTPValidationError"];
                };
            };
        };
    };
    update_camera_api_v1_cameras__name__patch: {
        parameters: {
            query?: {
                apply_changes?: boolean;
            };
            header?: never;
            path: {
                name: string;
            };
            cookie?: never;
        };
        requestBody: {
            content: {
                "application/json": components["schemas"]["CameraUpdate"];
            };
        };
        responses: {
            /** @description Successful Response */
            200: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ConfigChangeResponse"];
                };
            };
            /** @description Validation Error */
            422: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["HTTPValidationError"];
                };
            };
        };
    };
    list_clips_api_v1_clips_get: {
        parameters: {
            query?: {
                camera?: string | null;
                status?: components["schemas"]["ClipStatus"] | null;
                alerted?: boolean | null;
                detected?: boolean | null;
                risk_level?: string | null;
                activity_type?: string | null;
                since?: string | null;
                until?: string | null;
                limit?: number;
                cursor?: string | null;
            };
            header?: never;
            path?: never;
            cookie?: never;
        };
        requestBody?: never;
        responses: {
            /** @description Successful Response */
            200: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ClipListResponse"];
                };
            };
            /** @description Validation Error */
            422: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["HTTPValidationError"];
                };
            };
        };
    };
    get_clip_api_v1_clips__clip_id__get: {
        parameters: {
            query?: never;
            header?: never;
            path: {
                clip_id: string;
            };
            cookie?: never;
        };
        requestBody?: never;
        responses: {
            /** @description Successful Response */
            200: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ClipResponse"];
                };
            };
            /** @description Validation Error */
            422: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["HTTPValidationError"];
                };
            };
        };
    };
    delete_clip_api_v1_clips__clip_id__delete: {
        parameters: {
            query?: never;
            header?: never;
            path: {
                clip_id: string;
            };
            cookie?: never;
        };
        requestBody?: never;
        responses: {
            /** @description Successful Response */
            200: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ClipResponse"];
                };
            };
            /** @description Validation Error */
            422: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["HTTPValidationError"];
                };
            };
        };
    };
    get_clip_media_api_v1_clips__clip_id__media_get: {
        parameters: {
            query?: {
                token?: string | null;
            };
            header?: never;
            path: {
                clip_id: string;
            };
            cookie?: never;
        };
        requestBody?: never;
        responses: {
            /** @description Successful Response */
            200: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": unknown;
                };
            };
            /** @description Validation Error */
            422: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["HTTPValidationError"];
                };
            };
        };
    };
    create_clip_media_token_api_v1_clips__clip_id__media_token_post: {
        parameters: {
            query?: never;
            header?: never;
            path: {
                clip_id: string;
            };
            cookie?: never;
        };
        requestBody?: never;
        responses: {
            /** @description Successful Response */
            200: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ClipMediaTokenResponse"];
                };
            };
            /** @description Validation Error */
            422: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["HTTPValidationError"];
                };
            };
        };
    };
    get_config_api_v1_config_get: {
        parameters: {
            query?: never;
            header?: never;
            path?: never;
            cookie?: never;
        };
        requestBody?: never;
        responses: {
            /** @description Successful Response */
            200: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ConfigResponse"];
                };
            };
        };
    };
    get_diagnostics_api_v1_diagnostics_get: {
        parameters: {
            query?: never;
            header?: never;
            path?: never;
            cookie?: never;
        };
        requestBody?: never;
        responses: {
            /** @description Successful Response */
            200: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["DiagnosticsResponse"];
                };
            };
        };
    };
    get_health_api_v1_health_get: {
        parameters: {
            query?: never;
            header?: never;
            path?: never;
            cookie?: never;
        };
        requestBody?: never;
        responses: {
            /** @description Successful Response */
            200: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["HealthResponse"];
                };
            };
        };
    };
    discover_onvif_cameras_api_v1_onvif_discover_post: {
        parameters: {
            query?: never;
            header?: never;
            path?: never;
            cookie?: never;
        };
        requestBody?: {
            content: {
                "application/json": components["schemas"]["DiscoverRequest"] | null;
            };
        };
        responses: {
            /** @description Successful Response */
            200: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["DiscoveredCameraResponse"][];
                };
            };
            /** @description Validation Error */
            422: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["HTTPValidationError"];
                };
            };
        };
    };
    probe_onvif_camera_api_v1_onvif_probe_post: {
        parameters: {
            query?: never;
            header?: never;
            path?: never;
            cookie?: never;
        };
        requestBody: {
            content: {
                "application/json": components["schemas"]["ProbeRequest"];
            };
        };
        responses: {
            /** @description Successful Response */
            200: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["ProbeResponse"];
                };
            };
            /** @description Validation Error */
            422: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["HTTPValidationError"];
                };
            };
        };
    };
    reload_runtime_api_v1_runtime_reload_post: {
        parameters: {
            query?: never;
            header?: never;
            path?: never;
            cookie?: never;
        };
        requestBody?: never;
        responses: {
            /** @description Successful Response */
            202: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["RuntimeReloadResponse"];
                };
            };
        };
    };
    get_runtime_status_api_v1_runtime_status_get: {
        parameters: {
            query?: never;
            header?: never;
            path?: never;
            cookie?: never;
        };
        requestBody?: never;
        responses: {
            /** @description Successful Response */
            200: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["RuntimeStatusResponse"];
                };
            };
        };
    };
    finalize_setup_endpoint_api_v1_setup_finalize_post: {
        parameters: {
            query?: never;
            header?: never;
            path?: never;
            cookie?: never;
        };
        requestBody: {
            content: {
                "application/json": components["schemas"]["FinalizeRequest"];
            };
        };
        responses: {
            /** @description Successful Response */
            200: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["FinalizeResponse"];
                };
            };
            /** @description Validation Error */
            422: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["HTTPValidationError"];
                };
            };
        };
    };
    run_setup_preflight_endpoint_api_v1_setup_preflight_post: {
        parameters: {
            query?: never;
            header?: never;
            path?: never;
            cookie?: never;
        };
        requestBody?: never;
        responses: {
            /** @description Successful Response */
            200: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["PreflightResponse"];
                };
            };
        };
    };
    get_setup_status_endpoint_api_v1_setup_status_get: {
        parameters: {
            query?: never;
            header?: never;
            path?: never;
            cookie?: never;
        };
        requestBody?: never;
        responses: {
            /** @description Successful Response */
            200: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["SetupStatusResponse"];
                };
            };
        };
    };
    test_setup_connection_endpoint_api_v1_setup_test_connection_post: {
        parameters: {
            query?: never;
            header?: never;
            path?: never;
            cookie?: never;
        };
        requestBody: {
            content: {
                "application/json": components["schemas"]["TestConnectionRequest"];
            };
        };
        responses: {
            /** @description Successful Response */
            200: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["TestConnectionResponse"];
                };
            };
            /** @description Validation Error */
            422: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["HTTPValidationError"];
                };
            };
        };
    };
    get_stats_api_v1_stats_get: {
        parameters: {
            query?: never;
            header?: never;
            path?: never;
            cookie?: never;
        };
        requestBody?: never;
        responses: {
            /** @description Successful Response */
            200: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": components["schemas"]["StatsResponse"];
                };
            };
        };
    };
}
