import { z } from 'zod';
import { DeviceLocation } from '../../domain/value-objects/device-location';
import { DeviceStatus } from '../../domain/value-objects/device-status';
export declare const createDeviceSchema: z.ZodObject<{
    location: z.ZodType<DeviceLocation>;
    type: z.ZodString;
    info: z.ZodOptional<z.ZodNullable<z.ZodString>>;
    ipAddress: z.ZodString;
    userAgent: z.ZodOptional<z.ZodNullable<z.ZodString>>;
    acceptLanguage: z.ZodOptional<z.ZodNullable<z.ZodString>>;
    fingerprint: z.ZodString;
    pushToken: z.ZodOptional<z.ZodNullable<z.ZodString>>;
    status: z.ZodType<DeviceStatus | undefined>;
}, "strip", z.ZodTypeAny, {
    type: string;
    ipAddress: string;
    fingerprint: string;
    location: DeviceLocation;
    status?: DeviceStatus | undefined;
    info?: string | null | undefined;
    userAgent?: string | null | undefined;
    acceptLanguage?: string | null | undefined;
    pushToken?: string | null | undefined;
}, {
    type: string;
    ipAddress: string;
    fingerprint: string;
    location: DeviceLocation;
    status?: DeviceStatus | undefined;
    info?: string | null | undefined;
    userAgent?: string | null | undefined;
    acceptLanguage?: string | null | undefined;
    pushToken?: string | null | undefined;
}>;
export type CreateDeviceInput = z.infer<typeof createDeviceSchema>;
export declare const deviceIdParamSchema: z.ZodObject<{
    id: z.ZodString;
}, "strip", z.ZodTypeAny, {
    id: string;
}, {
    id: string;
}>;
export declare const updateDeviceStatusSchema: z.ZodObject<{
    status: z.ZodEnum<["active", "background", "closed"]>;
}, "strip", z.ZodTypeAny, {
    status: "active" | "background" | "closed";
}, {
    status: "active" | "background" | "closed";
}>;
export type UpdateDeviceStatusInput = z.infer<typeof updateDeviceStatusSchema>;
export declare const updateDevicePushTokenSchema: z.ZodObject<{
    pushToken: z.ZodNullable<z.ZodString>;
}, "strip", z.ZodTypeAny, {
    pushToken: string | null;
}, {
    pushToken: string | null;
}>;
export type UpdateDevicePushTokenInput = z.infer<typeof updateDevicePushTokenSchema>;
//# sourceMappingURL=device.dto.d.ts.map