thermostat: 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 };
},
> = ...