import type { IHueConfig, IHueLightStatePatch, IHueResourceResponse } from './hue.types.js';

export class HueClient {
  constructor(private readonly config: IHueConfig) {}

  public async getResources(): Promise<IHueResourceResponse> {
    return this.config.resources ?? {
      bridge: {
        id: this.config.bridgeId,
        productData: {
          manufacturerName: 'Signify',
          productName: 'Philips Hue Bridge',
        },
        metadata: {
          name: 'Hue Bridge',
        },
      },
      devices: [],
      lights: [],
    };
  }

  public async setLightState(lightIdArg: string, stateArg: IHueLightStatePatch): Promise<void> {
    void lightIdArg;
    void stateArg;
  }

  public async destroy(): Promise<void> {}
}
