/**
 * Philips Hue Node - Version 1
 * Discriminator: resource=light, operation=update
 */


interface Credentials {
  philipsHueOAuth2Api: CredentialReference;
}

/** Update a light */
export type PhilipsHueV1LightUpdateParams = {
  resource: 'light';
  operation: 'update';
/**
 * Choose from the list, or specify an ID using an &lt;a href="https://docs.n8n.io/code/expressions/"&gt;expression&lt;/a&gt;
 */
    lightId?: string | Expression<string>;
/**
 * On/Off state of the light
 * @default true
 */
    on?: boolean | Expression<boolean>;
/**
 * Additional Fields
 * @default {}
 */
    additionalFields?: {
    /** The alert effect, is a temporary change to the bulb’s state
     */
    alert?: 'none' | 'select' | 'lselect' | Expression<string>;
    /** The brightness value to set the light to. Brightness is a scale from 1 (the minimum the light is capable of) to 254 (the maximum).
     * @default 100
     */
    bri?: number | Expression<number>;
    /** Increments or decrements the value of the brightness. This value is ignored if the Brightness attribute is provided.
     * @default 0
     */
    bri_inc?: number | Expression<number>;
    /** The Mired color temperature of the light. 2012 connected lights are capable of 153 (6500K) to 500 (2000K).
     * @default 0
     */
    ct?: number | Expression<number>;
    /** Increments or decrements the value of the ct. ct_inc is ignored if the ct attribute is provided.
     * @default 0
     */
    ct_inc?: number | Expression<number>;
    /** The x and y coordinates of a color in CIE color space. The first entry is the x coordinate and the second entry is the y coordinate. Both x and y are between 0 and 1
     */
    xy?: string | Expression<string> | PlaceholderValue;
    /** Increments or decrements the value of the xy. This value is ignored if the Coordinates attribute is provided. Any ongoing color transition is stopped. Max value [0.5, 0.5]
     */
    xy_inc?: string | Expression<string> | PlaceholderValue;
    /** The dynamic effect of the light
     */
    effect?: 'none' | 'colorloop' | Expression<string>;
    /** The hue value to set light to.The hue value is a wrapping value between 0 and 65535. Both 0 and 65535 are red, 25500 is green and 46920 is blue.
     * @default 0
     */
    hue?: number | Expression<number>;
    /** Increments or decrements the value of the hue. Hue Increments is ignored if the Hue attribute is provided.
     * @default 0
     */
    hue_inc?: number | Expression<number>;
    /** Saturation of the light. 254 is the most saturated (colored) and 0 is the least saturated (white).
     * @default 0
     */
    sat?: number | Expression<number>;
    /** Increments or decrements the value of the sat. This value is ignored if the Saturation attribute is provided.
     * @default 0
     */
    sat_inc?: number | Expression<number>;
    /** The duration in seconds of the transition from the light’s current state to the new state
     * @default 4
     */
    transitiontime?: number | Expression<number>;
  };
};

export type PhilipsHueV1LightUpdateOutput = {
  '/lights/3/state/on'?: boolean;
};

export type PhilipsHueV1LightUpdateNode = {
  type: 'n8n-nodes-base.philipsHue';
  version: 1;
  credentials?: Credentials;
  config: NodeConfig<PhilipsHueV1LightUpdateParams>;
  output?: Items<PhilipsHueV1LightUpdateOutput>;
};