@seamapi/types - v1.461.0
    Preparing search index...

    Variable device_model_category_specific_propertiesConst

    device_model_category_specific_properties: ZodDiscriminatedUnion<
        "main_category",
        [
            ZodObject<
                {
                    main_category: ZodLiteral<"smartlock">;
                    physical_properties: ZodObject<
                        {
                            has_camera: ZodBoolean;
                            has_physical_key: ZodBoolean;
                            lock_type: ZodEnum<
                                [
                                    "deadbolt",
                                    "lever",
                                    "mortise",
                                    "lockbox",
                                    "cylinder",
                                    "padlock",
                                    "locker",
                                    "unknown",
                                ],
                            >;
                        },
                        "strip",
                        ZodTypeAny,
                        {
                            has_camera: boolean;
                            has_physical_key: boolean;
                            lock_type: | "unknown"
                            | "deadbolt"
                            | "lever"
                            | "mortise"
                            | "lockbox"
                            | "cylinder"
                            | "padlock"
                            | "locker";
                        },
                        {
                            has_camera: boolean;
                            has_physical_key: boolean;
                            lock_type: | "unknown"
                            | "deadbolt"
                            | "lever"
                            | "mortise"
                            | "lockbox"
                            | "cylinder"
                            | "padlock"
                            | "locker";
                        },
                    >;
                    software_features: ZodObject<
                        {
                            can_program_access_codes: ZodBoolean;
                            can_program_access_codes_offline: ZodBoolean;
                            can_program_access_schedules: ZodBoolean;
                            can_remotely_unlock: ZodBoolean;
                        },
                        "strip",
                        ZodTypeAny,
                        {
                            can_program_access_codes: boolean;
                            can_program_access_codes_offline: boolean;
                            can_program_access_schedules: boolean;
                            can_remotely_unlock: boolean;
                        },
                        {
                            can_program_access_codes: boolean;
                            can_program_access_codes_offline: boolean;
                            can_program_access_schedules: boolean;
                            can_remotely_unlock: boolean;
                        },
                    >;
                } & Pick<
                    {
                        can_hvac_cool: ZodOptional<ZodLiteral<true>>;
                        can_hvac_heat: ZodOptional<ZodLiteral<true>>;
                        can_hvac_heat_cool: ZodOptional<ZodLiteral<true>>;
                        can_program_offline_access_codes: ZodOptional<ZodLiteral<true>>;
                        can_program_online_access_codes: ZodOptional<ZodLiteral<true>>;
                        can_remotely_lock: ZodOptional<ZodLiteral<true>>;
                        can_remotely_unlock: ZodOptional<ZodLiteral<true>>;
                        can_turn_off_hvac: ZodOptional<ZodLiteral<true>>;
                    },
                    | "can_remotely_unlock"
                    | "can_remotely_lock"
                    | "can_program_offline_access_codes"
                    | "can_program_online_access_codes",
                >,
                "strip",
                ZodTypeAny,
                {
                    can_program_offline_access_codes?: true;
                    can_program_online_access_codes?: true;
                    can_remotely_lock?: true;
                    can_remotely_unlock?: true;
                    main_category: "smartlock";
                    physical_properties: {
                        has_camera: boolean;
                        has_physical_key: boolean;
                        lock_type: | "unknown"
                        | "deadbolt"
                        | "lever"
                        | "mortise"
                        | "lockbox"
                        | "cylinder"
                        | "padlock"
                        | "locker";
                    };
                    software_features: {
                        can_program_access_codes: boolean;
                        can_program_access_codes_offline: boolean;
                        can_program_access_schedules: boolean;
                        can_remotely_unlock: boolean;
                    };
                },
                {
                    can_program_offline_access_codes?: true;
                    can_program_online_access_codes?: true;
                    can_remotely_lock?: true;
                    can_remotely_unlock?: true;
                    main_category: "smartlock";
                    physical_properties: {
                        has_camera: boolean;
                        has_physical_key: boolean;
                        lock_type: | "unknown"
                        | "deadbolt"
                        | "lever"
                        | "mortise"
                        | "lockbox"
                        | "cylinder"
                        | "padlock"
                        | "locker";
                    };
                    software_features: {
                        can_program_access_codes: boolean;
                        can_program_access_codes_offline: boolean;
                        can_program_access_schedules: boolean;
                        can_remotely_unlock: boolean;
                    };
                },
            >,
            ZodObject<
                {
                    main_category: ZodLiteral<"sensor">;
                    physical_properties: ZodObject<
                        {
                            has_humidity_sensor: ZodBoolean;
                            has_noise_sensor: ZodBoolean;
                            has_occupancy_detection: ZodBoolean;
                            has_temperature_sensor: ZodBoolean;
                        },
                        "strip",
                        ZodTypeAny,
                        {
                            has_humidity_sensor: boolean;
                            has_noise_sensor: boolean;
                            has_occupancy_detection: boolean;
                            has_temperature_sensor: boolean;
                        },
                        {
                            has_humidity_sensor: boolean;
                            has_noise_sensor: boolean;
                            has_occupancy_detection: boolean;
                            has_temperature_sensor: boolean;
                        },
                    >;
                },
                "strip",
                ZodTypeAny,
                {
                    main_category: "sensor";
                    physical_properties: {
                        has_humidity_sensor: boolean;
                        has_noise_sensor: boolean;
                        has_occupancy_detection: boolean;
                        has_temperature_sensor: boolean;
                    };
                },
                {
                    main_category: "sensor";
                    physical_properties: {
                        has_humidity_sensor: boolean;
                        has_noise_sensor: boolean;
                        has_occupancy_detection: boolean;
                        has_temperature_sensor: boolean;
                    };
                },
            >,
            ZodObject<
                {
                    main_category: ZodLiteral<"thermostat">;
                    physical_properties: ZodObject<
                        {
                            available_modes: ZodArray<
                                ZodEnum<["heat", "cool", "fan", "eco"]>,
                                "many",
                            >;
                            has_humidity_sensor: ZodBoolean;
                            has_occupancy_detection: ZodBoolean;
                            has_temperature_sensor: ZodBoolean;
                            is_heat_pump_compatible: ZodBoolean;
                            supports_demand_response: ZodBoolean;
                            supports_emergency_heating_mode: ZodBoolean;
                        },
                        "strip",
                        ZodTypeAny,
                        {
                            available_modes: ("heat" | "cool" | "eco" | "fan")[];
                            has_humidity_sensor: boolean;
                            has_occupancy_detection: boolean;
                            has_temperature_sensor: boolean;
                            is_heat_pump_compatible: boolean;
                            supports_demand_response: boolean;
                            supports_emergency_heating_mode: boolean;
                        },
                        {
                            available_modes: ("heat" | "cool" | "eco" | "fan")[];
                            has_humidity_sensor: boolean;
                            has_occupancy_detection: boolean;
                            has_temperature_sensor: boolean;
                            is_heat_pump_compatible: boolean;
                            supports_demand_response: boolean;
                            supports_emergency_heating_mode: boolean;
                        },
                    >;
                    software_features: ZodObject<
                        { can_program_climate_schedules: ZodBoolean },
                        "strip",
                        ZodTypeAny,
                        { can_program_climate_schedules: boolean },
                        { can_program_climate_schedules: boolean },
                    >;
                } & Pick<
                    {
                        can_hvac_cool: ZodOptional<ZodLiteral<true>>;
                        can_hvac_heat: ZodOptional<ZodLiteral<true>>;
                        can_hvac_heat_cool: ZodOptional<ZodLiteral<true>>;
                        can_program_offline_access_codes: ZodOptional<ZodLiteral<true>>;
                        can_program_online_access_codes: ZodOptional<ZodLiteral<true>>;
                        can_remotely_lock: ZodOptional<ZodLiteral<true>>;
                        can_remotely_unlock: ZodOptional<ZodLiteral<true>>;
                        can_turn_off_hvac: ZodOptional<ZodLiteral<true>>;
                    },
                    | "can_hvac_heat"
                    | "can_hvac_cool"
                    | "can_hvac_heat_cool"
                    | "can_turn_off_hvac",
                >,
                "strip",
                ZodTypeAny,
                {
                    can_hvac_cool?: true;
                    can_hvac_heat?: true;
                    can_hvac_heat_cool?: true;
                    can_turn_off_hvac?: true;
                    main_category: "thermostat";
                    physical_properties: {
                        available_modes: ("heat" | "cool" | "eco" | "fan")[];
                        has_humidity_sensor: boolean;
                        has_occupancy_detection: boolean;
                        has_temperature_sensor: boolean;
                        is_heat_pump_compatible: boolean;
                        supports_demand_response: boolean;
                        supports_emergency_heating_mode: boolean;
                    };
                    software_features: { can_program_climate_schedules: boolean };
                },
                {
                    can_hvac_cool?: true;
                    can_hvac_heat?: true;
                    can_hvac_heat_cool?: true;
                    can_turn_off_hvac?: true;
                    main_category: "thermostat";
                    physical_properties: {
                        available_modes: ("heat" | "cool" | "eco" | "fan")[];
                        has_humidity_sensor: boolean;
                        has_occupancy_detection: boolean;
                        has_temperature_sensor: boolean;
                        is_heat_pump_compatible: boolean;
                        supports_demand_response: boolean;
                        supports_emergency_heating_mode: boolean;
                    };
                    software_features: { can_program_climate_schedules: boolean };
                },
            >,
        ],
    > = ...