import { z } from 'zod';
export declare const GoveeCapabilitySchema: z.ZodObject<{
    type: z.ZodNullable<z.ZodOptional<z.ZodString>>;
    instance: z.ZodNullable<z.ZodOptional<z.ZodString>>;
    parameters: z.ZodOptional<z.ZodObject<{
        dataType: z.ZodString;
        options: z.ZodOptional<z.ZodArray<z.ZodObject<{
            name: z.ZodString;
            value: z.ZodUnknown;
        }, z.core.$strip>>>;
    }, z.core.$strip>>;
}, z.core.$loose>;
export declare const GoveeDeviceResponseSchema: z.ZodObject<{
    device: z.ZodNullable<z.ZodOptional<z.ZodString>>;
    sku: z.ZodNullable<z.ZodOptional<z.ZodString>>;
    deviceName: z.ZodNullable<z.ZodOptional<z.ZodString>>;
    capabilities: z.ZodNullable<z.ZodOptional<z.ZodArray<z.ZodObject<{
        type: z.ZodNullable<z.ZodOptional<z.ZodString>>;
        instance: z.ZodNullable<z.ZodOptional<z.ZodString>>;
        parameters: z.ZodOptional<z.ZodObject<{
            dataType: z.ZodString;
            options: z.ZodOptional<z.ZodArray<z.ZodObject<{
                name: z.ZodString;
                value: z.ZodUnknown;
            }, z.core.$strip>>>;
        }, z.core.$strip>>;
    }, z.core.$loose>>>>;
}, z.core.$loose>;
export declare const GoveeDevicesResponseSchema: z.ZodObject<{
    code: z.ZodNumber;
    message: z.ZodString;
    data: z.ZodArray<z.ZodObject<{
        device: z.ZodNullable<z.ZodOptional<z.ZodString>>;
        sku: z.ZodNullable<z.ZodOptional<z.ZodString>>;
        deviceName: z.ZodNullable<z.ZodOptional<z.ZodString>>;
        capabilities: z.ZodNullable<z.ZodOptional<z.ZodArray<z.ZodObject<{
            type: z.ZodNullable<z.ZodOptional<z.ZodString>>;
            instance: z.ZodNullable<z.ZodOptional<z.ZodString>>;
            parameters: z.ZodOptional<z.ZodObject<{
                dataType: z.ZodString;
                options: z.ZodOptional<z.ZodArray<z.ZodObject<{
                    name: z.ZodString;
                    value: z.ZodUnknown;
                }, z.core.$strip>>>;
            }, z.core.$strip>>;
        }, z.core.$loose>>>>;
    }, z.core.$loose>>;
}, z.core.$strip>;
export declare const GoveeStateCapabilitySchema: z.ZodObject<{
    type: z.ZodString;
    instance: z.ZodString;
    state: z.ZodObject<{
        value: z.ZodUnknown;
    }, z.core.$strip>;
}, z.core.$strip>;
export declare const GoveeStateResponseSchema: z.ZodObject<{
    code: z.ZodNumber;
    message: z.ZodString;
    data: z.ZodObject<{
        device: z.ZodString;
        sku: z.ZodString;
        capabilities: z.ZodArray<z.ZodObject<{
            type: z.ZodString;
            instance: z.ZodString;
            state: z.ZodObject<{
                value: z.ZodUnknown;
            }, z.core.$strip>;
        }, z.core.$strip>>;
    }, z.core.$strip>;
}, z.core.$strip>;
export declare const GoveeCommandResponseSchema: z.ZodObject<{
    code: z.ZodNumber;
    message: z.ZodString;
    data: z.ZodOptional<z.ZodUnknown>;
}, z.core.$strip>;
export type GoveeCapability = z.infer<typeof GoveeCapabilitySchema>;
export type GoveeDeviceResponse = z.infer<typeof GoveeDeviceResponseSchema>;
export type GoveeDevicesResponse = z.infer<typeof GoveeDevicesResponseSchema>;
export type GoveeStateCapability = z.infer<typeof GoveeStateCapabilitySchema>;
export type GoveeStateResponse = z.infer<typeof GoveeStateResponseSchema>;
export type GoveeCommandResponse = z.infer<typeof GoveeCommandResponseSchema>;
//# sourceMappingURL=response-schemas.d.ts.map