apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  name: rooms.mock.digi.dev
spec:
  group: mock.digi.dev
  names:
    kind: Room
    listKind: RoomList
    plural: rooms
    singular: room
  scope: Namespaced
  versions:
  - name: v1
    schema:
      openAPIV3Schema:
        properties:
          apiVersion:
            type: string
          kind:
            type: string
          metadata:
            type: object
          spec:
            properties:
              control:
                properties:
                  ambiance_color:
                    properties:
                      intent:
                        type: string
                      status:
                        type: string
                    type: object
                  brightness:
                    properties:
                      intent:
                        type: number
                      status:
                        type: number
                    type: object
                  mode:
                    properties:
                      intent:
                        type: string
                      status:
                        type: string
                    type: object
                type: object
              meta:
                properties:
                  modeConfig:
                    additionalProperties:
                      properties:
                        brightness:
                          type: number
                        power:
                          type: string
                      type: object
                    type: object
                type: object
              mount:
                properties:
                  mock.digi.dev/v1/colorlamps:
                    additionalProperties:
                      properties:
                        generation:
                          type: number
                        mode:
                          type: string
                        spec: &id001
                          properties:
                            control:
                              properties:
                                brightness:
                                  properties:
                                    intent:
                                      type: number
                                    status:
                                      type: number
                                  type: object
                                hue:
                                  properties:
                                    intent:
                                      type: number
                                    status:
                                      type: number
                                  type: object
                                power:
                                  properties:
                                    intent:
                                      type: number
                                    status:
                                      type: number
                                  type: object
                                saturation:
                                  properties:
                                    intent:
                                      type: number
                                    status:
                                      type: number
                                  type: object
                              type: object
                            obs:
                              properties:
                                reason:
                                  type: string
                              type: object
                          type: object
                        status:
                          type: string
                      type: object
                    type: object
                  mock.digi.dev/v1/motionsensors:
                    additionalProperties:
                      properties:
                        generation:
                          type: number
                        mode:
                          type: string
                        spec:
                          properties:
                            control:
                              properties:
                                sensitivity:
                                  properties:
                                    intent:
                                      type: number
                                    status:
                                      type: number
                                  type: object
                              type: object
                            obs:
                              properties:
                                battery_level:
                                  type: string
                                last_triggered_time:
                                  type: number
                                reason:
                                  type: string
                              type: object
                          type: object
                        status:
                          type: string
                      type: object
                    type: object
                  mock.digi.dev/v1/unilamps:
                    additionalProperties:
                      properties:
                        generation:
                          type: number
                        mode:
                          type: string
                        spec:
                          properties:
                            control:
                              properties:
                                brightness:
                                  properties:
                                    intent:
                                      type: number
                                    status:
                                      type: number
                                  type: object
                                power:
                                  properties:
                                    intent:
                                      type: string
                                    status:
                                      type: string
                                  type: object
                              type: object
                            mount:
                              properties:
                                mock.digi.dev/v1/colorlamps:
                                  additionalProperties:
                                    properties:
                                      generation:
                                        type: number
                                      mode:
                                        type: string
                                      spec: *id001
                                      status:
                                        type: string
                                    type: object
                                  type: object
                                mock.digi.dev/v1/lamps:
                                  additionalProperties:
                                    properties:
                                      generation:
                                        type: number
                                      mode:
                                        type: string
                                      spec:
                                        properties:
                                          control:
                                            properties:
                                              brightness:
                                                properties:
                                                  intent:
                                                    type: number
                                                  status:
                                                    type: number
                                                type: object
                                              power:
                                                properties:
                                                  intent:
                                                    type: string
                                                  status:
                                                    type: string
                                                type: object
                                            type: object
                                          obs:
                                            properties:
                                              reason:
                                                type: string
                                            type: object
                                        type: object
                                      status:
                                        type: string
                                    type: object
                                  type: object
                              type: object
                            obs:
                              properties:
                                reason:
                                  type: string
                              type: object
                          type: object
                        status:
                          type: string
                      type: object
                    type: object
                type: object
              obs:
                properties:
                  objects:
                    items:
                      additionalProperties:
                        properties:
                          h:
                            type: number
                          w:
                            type: number
                          x1:
                            type: number
                          x2:
                            type: number
                        type: object
                      type: object
                    type: array
                  reason:
                    type: string
                type: object
              reflex:
                additionalProperties:
                  properties:
                    policy:
                      type: string
                    priority:
                      type: number
                    processor:
                      type: string
                  type: object
                type: object
            type: object
        type: object
    served: true
    storage: true
