import { type Client } from '../../../../../seam/connect/client.js'; import { type SeamHttpFromPublishableKeyOptions, type SeamHttpOptions, type SeamHttpOptionsWithApiKey, type SeamHttpOptionsWithClient, type SeamHttpOptionsWithClientSessionToken, type SeamHttpOptionsWithConsoleSessionToken, type SeamHttpOptionsWithPersonalAccessToken, type SeamHttpRequestOptions } from '../../../../../seam/connect/options.js'; import type { ThermostatSchedule } from '../../../../../seam/connect/resources/thermostat-schedule.js'; import { SeamHttpRequest } from '../../../../../seam/connect/seam-http-request.js'; import { SeamPaginator } from '../../../../../seam/connect/seam-paginator.js'; export declare class SeamHttpThermostatsSchedules { client: Client; readonly defaults: Required; readonly ltsVersion = "1.0.0"; static ltsVersion: string; constructor(apiKeyOrOptions?: string | SeamHttpOptions); static fromClient(client: SeamHttpOptionsWithClient['client'], options?: Omit): SeamHttpThermostatsSchedules; static fromApiKey(apiKey: SeamHttpOptionsWithApiKey['apiKey'], options?: Omit): SeamHttpThermostatsSchedules; static fromClientSessionToken(clientSessionToken: SeamHttpOptionsWithClientSessionToken['clientSessionToken'], options?: Omit): SeamHttpThermostatsSchedules; static fromPublishableKey(publishableKey: string, userIdentifierKey: string, options?: SeamHttpFromPublishableKeyOptions): Promise; static fromConsoleSessionToken(consoleSessionToken: SeamHttpOptionsWithConsoleSessionToken['consoleSessionToken'], workspaceId: SeamHttpOptionsWithConsoleSessionToken['workspaceId'], options?: Omit): SeamHttpThermostatsSchedules; static fromPersonalAccessToken(personalAccessToken: SeamHttpOptionsWithPersonalAccessToken['personalAccessToken'], workspaceId: SeamHttpOptionsWithPersonalAccessToken['workspaceId'], options?: Omit): SeamHttpThermostatsSchedules; createPaginator(request: SeamHttpRequest): SeamPaginator; updateClientSessionToken(clientSessionToken: SeamHttpOptionsWithClientSessionToken['clientSessionToken']): Promise; /** * Creates a new [thermostat schedule](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-thermostat-schedules) for a specified [thermostat](https://docs.seam.co/capability-guides/thermostats). */ create(parameters: ThermostatsSchedulesCreateParameters, options?: ThermostatsSchedulesCreateOptions): ThermostatsSchedulesCreateRequest; /** * Deletes a [thermostat schedule](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-thermostat-schedules) for a specified [thermostat](https://docs.seam.co/capability-guides/thermostats). */ delete(parameters: ThermostatsSchedulesDeleteParameters, options?: ThermostatsSchedulesDeleteOptions): ThermostatsSchedulesDeleteRequest; /** * Returns a specified [thermostat schedule](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-thermostat-schedules). */ get(parameters: ThermostatsSchedulesGetParameters, options?: ThermostatsSchedulesGetOptions): ThermostatsSchedulesGetRequest; /** * Returns a list of all [thermostat schedules](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-thermostat-schedules) for a specified [thermostat](https://docs.seam.co/capability-guides/thermostats). */ list(parameters: ThermostatsSchedulesListParameters, options?: ThermostatsSchedulesListOptions): ThermostatsSchedulesListRequest; /** * Updates a specified [thermostat schedule](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-thermostat-schedules). */ update(parameters: ThermostatsSchedulesUpdateParameters, options?: ThermostatsSchedulesUpdateOptions): ThermostatsSchedulesUpdateRequest; } export type ThermostatsSchedulesCreateParameters = { /** * Key of the [climate preset](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-climate-presets) to use for the new thermostat schedule. */ climate_preset_key: string; /** * ID of the thermostat device for which you want to create a schedule. */ device_id: string; /** * Date and time at which the new thermostat schedule ends, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. */ ends_at: string; /** * Indicates whether a person at the thermostat or using the API can change the thermostat's settings while the new schedule is active. See also [Specifying Manual Override Permissions](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-thermostat-schedules#specifying-manual-override-permissions). */ is_override_allowed?: boolean | undefined; /** * Number of minutes for which a person at the thermostat or using the API can change the thermostat's settings after the activation of the scheduled climate preset. See also [Specifying Manual Override Permissions](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-thermostat-schedules#specifying-manual-override-permissions). */ max_override_period_minutes?: number | undefined; /** * Name of the thermostat schedule. */ name?: string | undefined; /** * Date and time at which the new thermostat schedule starts, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. */ starts_at: string; }; /** * @deprecated Use ThermostatsSchedulesCreateRequest instead. */ export type ThermostatsSchedulesCreateResponse = { thermostat_schedule: ThermostatSchedule; }; export type ThermostatsSchedulesCreateRequest = SeamHttpRequest; export interface ThermostatsSchedulesCreateOptions { } export type ThermostatsSchedulesDeleteParameters = { /** * ID of the thermostat schedule that you want to delete. */ thermostat_schedule_id: string; }; /** * @deprecated Use ThermostatsSchedulesDeleteRequest instead. */ export type ThermostatsSchedulesDeleteResponse = void; export type ThermostatsSchedulesDeleteRequest = SeamHttpRequest; export interface ThermostatsSchedulesDeleteOptions { } export type ThermostatsSchedulesGetParameters = { /** * ID of the thermostat schedule that you want to get. */ thermostat_schedule_id: string; }; /** * @deprecated Use ThermostatsSchedulesGetRequest instead. */ export type ThermostatsSchedulesGetResponse = { thermostat_schedule: ThermostatSchedule; }; export type ThermostatsSchedulesGetRequest = SeamHttpRequest; export interface ThermostatsSchedulesGetOptions { } export type ThermostatsSchedulesListParameters = { /** * ID of the thermostat device for which you want to list schedules. */ device_id: string; /** * User identifier key by which to filter the list of returned thermostat schedules. */ user_identifier_key?: string | undefined; }; /** * @deprecated Use ThermostatsSchedulesListRequest instead. */ export type ThermostatsSchedulesListResponse = { thermostat_schedules: Array; }; export type ThermostatsSchedulesListRequest = SeamHttpRequest; export interface ThermostatsSchedulesListOptions { } export type ThermostatsSchedulesUpdateParameters = { /** * Key of the [climate preset](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-climate-presets) to use for the thermostat schedule. */ climate_preset_key?: string | undefined; /** * Date and time at which the thermostat schedule ends, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. */ ends_at?: string | undefined; /** * Indicates whether a person at the thermostat or using the API can change the thermostat's settings while the schedule is active. See also [Specifying Manual Override Permissions](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-thermostat-schedules#specifying-manual-override-permissions). */ is_override_allowed?: boolean | undefined; /** * Number of minutes for which a person at the thermostat or using the API can change the thermostat's settings after the activation of the scheduled climate preset. See also [Specifying Manual Override Permissions](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-thermostat-schedules#specifying-manual-override-permissions). */ max_override_period_minutes?: number | undefined; /** * Name of the thermostat schedule. */ name?: string | undefined; /** * Date and time at which the thermostat schedule starts, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. */ starts_at?: string | undefined; /** * ID of the thermostat schedule that you want to update. */ thermostat_schedule_id: string; }; /** * @deprecated Use ThermostatsSchedulesUpdateRequest instead. */ export type ThermostatsSchedulesUpdateResponse = void; export type ThermostatsSchedulesUpdateRequest = SeamHttpRequest; export interface ThermostatsSchedulesUpdateOptions { }