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 { ActionAttempt } from '../../../../../seam/connect/resources/action-attempt.js'; import type { ThermostatDailyProgram } from '../../../../../seam/connect/resources/thermostat-daily-program.js'; import { SeamHttpRequest } from '../../../../../seam/connect/seam-http-request.js'; import { SeamPaginator } from '../../../../../seam/connect/seam-paginator.js'; export declare class SeamHttpThermostatsDailyPrograms { client: Client; readonly defaults: Required; readonly ltsVersion = "1.0.0"; static ltsVersion: string; constructor(apiKeyOrOptions?: string | SeamHttpOptions); static fromClient(client: SeamHttpOptionsWithClient['client'], options?: Omit): SeamHttpThermostatsDailyPrograms; static fromApiKey(apiKey: SeamHttpOptionsWithApiKey['apiKey'], options?: Omit): SeamHttpThermostatsDailyPrograms; static fromClientSessionToken(clientSessionToken: SeamHttpOptionsWithClientSessionToken['clientSessionToken'], options?: Omit): SeamHttpThermostatsDailyPrograms; static fromPublishableKey(publishableKey: string, userIdentifierKey: string, options?: SeamHttpFromPublishableKeyOptions): Promise; static fromConsoleSessionToken(consoleSessionToken: SeamHttpOptionsWithConsoleSessionToken['consoleSessionToken'], workspaceId: SeamHttpOptionsWithConsoleSessionToken['workspaceId'], options?: Omit): SeamHttpThermostatsDailyPrograms; static fromPersonalAccessToken(personalAccessToken: SeamHttpOptionsWithPersonalAccessToken['personalAccessToken'], workspaceId: SeamHttpOptionsWithPersonalAccessToken['workspaceId'], options?: Omit): SeamHttpThermostatsDailyPrograms; createPaginator(request: SeamHttpRequest): SeamPaginator; updateClientSessionToken(clientSessionToken: SeamHttpOptionsWithClientSessionToken['clientSessionToken']): Promise; /** * Creates a new thermostat daily program. A daily program consists of a set of periods, where each period includes a start time and the key of a configured climate preset. Once you have defined a daily program, you can assign it to one or more days within a weekly program. */ create(parameters: ThermostatsDailyProgramsCreateParameters, options?: ThermostatsDailyProgramsCreateOptions): ThermostatsDailyProgramsCreateRequest; /** * Deletes a thermostat daily program. */ delete(parameters: ThermostatsDailyProgramsDeleteParameters, options?: ThermostatsDailyProgramsDeleteOptions): ThermostatsDailyProgramsDeleteRequest; /** * Updates a specified thermostat daily program. The periods that you specify overwrite any existing periods for the daily program. */ update(parameters: ThermostatsDailyProgramsUpdateParameters, options?: ThermostatsDailyProgramsUpdateOptions): ThermostatsDailyProgramsUpdateRequest; } export type ThermostatsDailyProgramsCreateParameters = { /** * ID of the thermostat device for which you want to create a daily program. */ device_id: string; /** * Name of the thermostat daily program. */ name: string; /** * Array of thermostat daily program periods. */ periods: Array<{ /** * Key of the [climate preset](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-climate-presets) to activate at the `starts_at_time`. */ climate_preset_key?: string | undefined; /** * Time at which the thermostat daily program period starts, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. */ starts_at_time?: string | undefined; }>; }; /** * @deprecated Use ThermostatsDailyProgramsCreateRequest instead. */ export type ThermostatsDailyProgramsCreateResponse = { thermostat_daily_program: ThermostatDailyProgram; }; export type ThermostatsDailyProgramsCreateRequest = SeamHttpRequest; export interface ThermostatsDailyProgramsCreateOptions { } export type ThermostatsDailyProgramsDeleteParameters = { /** * ID of the thermostat daily program that you want to delete. */ thermostat_daily_program_id: string; }; /** * @deprecated Use ThermostatsDailyProgramsDeleteRequest instead. */ export type ThermostatsDailyProgramsDeleteResponse = void; export type ThermostatsDailyProgramsDeleteRequest = SeamHttpRequest; export interface ThermostatsDailyProgramsDeleteOptions { } export type ThermostatsDailyProgramsUpdateParameters = { /** * Name of the thermostat daily program that you want to update. */ name: string; /** * Array of thermostat daily program periods. The periods that you specify overwrite any existing periods for the daily program. */ periods: Array<{ /** * Key of the [climate preset](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-climate-presets) to activate at the `starts_at_time`. */ climate_preset_key?: string | undefined; /** * Time at which the thermostat daily program period starts, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. */ starts_at_time?: string | undefined; }>; /** * ID of the thermostat daily program that you want to update. */ thermostat_daily_program_id: string; }; /** * @deprecated Use ThermostatsDailyProgramsUpdateRequest instead. */ export type ThermostatsDailyProgramsUpdateResponse = { action_attempt: ActionAttempt; }; export type ThermostatsDailyProgramsUpdateRequest = SeamHttpRequest; export type ThermostatsDailyProgramsUpdateOptions = Pick;