import { z } from 'zod';
export declare function canCompleteTask(dueDate: number): boolean;
export declare const categoryCreateSchema: z.ZodObject<{
    name: z.ZodString;
    color: z.ZodString;
    order: z.ZodOptional<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
    name: string;
    color: string;
    order?: number | undefined;
}, {
    name: string;
    color: string;
    order?: number | undefined;
}>;
export declare const categoryUpdateSchema: z.ZodObject<{
    name: z.ZodOptional<z.ZodString>;
    color: z.ZodOptional<z.ZodString>;
    order: z.ZodOptional<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
    name?: string | undefined;
    color?: string | undefined;
    order?: number | undefined;
}, {
    name?: string | undefined;
    color?: string | undefined;
    order?: number | undefined;
}>;
export declare const repeatSchema: z.ZodEnum<["none", "daily", "weekly", "monthly", "custom"]>;
export declare const repeatFieldSchema: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodEnum<["none", "daily", "weekly", "monthly", "custom"]>, z.ZodLiteral<"">]>, "custom" | "none" | "daily" | "weekly" | "monthly", "" | "custom" | "none" | "daily" | "weekly" | "monthly">>;
export declare const repeatIntervalFieldSchema: z.ZodOptional<z.ZodEffects<z.ZodNumber, number, number>>;
export declare const taskCreateSchema: z.ZodObject<{
    title: z.ZodString;
    description: z.ZodOptional<z.ZodString>;
    categoryId: z.ZodNullable<z.ZodEffects<z.ZodString, string | null, string>>;
    priority: z.ZodOptional<z.ZodEnum<["none", "low", "medium", "high", "critical"]>>;
    dueDate: z.ZodOptional<z.ZodNumber>;
    dueTime: z.ZodEffects<z.ZodUnion<[z.ZodOptional<z.ZodString>, z.ZodLiteral<"">]>, string, string | undefined>;
    endTime: z.ZodUnion<[z.ZodOptional<z.ZodString>, z.ZodLiteral<"">]>;
    allDay: z.ZodOptional<z.ZodBoolean>;
    repeat: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodEnum<["none", "daily", "weekly", "monthly", "custom"]>, z.ZodLiteral<"">]>, "custom" | "none" | "daily" | "weekly" | "monthly", "" | "custom" | "none" | "daily" | "weekly" | "monthly">>;
    repeatInterval: z.ZodOptional<z.ZodEffects<z.ZodNumber, number, number>>;
    repeatDays: z.ZodOptional<z.ZodString>;
    seriesId: z.ZodOptional<z.ZodString>;
    reminder: z.ZodOptional<z.ZodEnum<["none", "at_time", "15", "30", "60", "120", "1440"]>>;
    reminders: z.ZodOptional<z.ZodString>;
    assigneeId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
    completedAt: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
    subtasks: z.ZodOptional<z.ZodArray<z.ZodObject<{
        title: z.ZodString;
    }, "strip", z.ZodTypeAny, {
        title: string;
    }, {
        title: string;
    }>, "many">>;
}, "strip", z.ZodTypeAny, {
    categoryId: string | null;
    title: string;
    dueTime: string;
    subtasks?: {
        title: string;
    }[] | undefined;
    description?: string | undefined;
    priority?: "none" | "low" | "medium" | "high" | "critical" | undefined;
    dueDate?: number | undefined;
    endTime?: string | undefined;
    allDay?: boolean | undefined;
    repeat?: "custom" | "none" | "daily" | "weekly" | "monthly" | undefined;
    repeatInterval?: number | undefined;
    repeatDays?: string | undefined;
    seriesId?: string | undefined;
    assigneeId?: string | null | undefined;
    reminder?: "none" | "at_time" | "15" | "30" | "60" | "120" | "1440" | undefined;
    reminders?: string | undefined;
    completedAt?: number | null | undefined;
}, {
    categoryId: string | null;
    title: string;
    subtasks?: {
        title: string;
    }[] | undefined;
    description?: string | undefined;
    priority?: "none" | "low" | "medium" | "high" | "critical" | undefined;
    dueDate?: number | undefined;
    dueTime?: string | undefined;
    endTime?: string | undefined;
    allDay?: boolean | undefined;
    repeat?: "" | "custom" | "none" | "daily" | "weekly" | "monthly" | undefined;
    repeatInterval?: number | undefined;
    repeatDays?: string | undefined;
    seriesId?: string | undefined;
    assigneeId?: string | null | undefined;
    reminder?: "none" | "at_time" | "15" | "30" | "60" | "120" | "1440" | undefined;
    reminders?: string | undefined;
    completedAt?: number | null | undefined;
}>;
export declare const taskUpdateSchema: z.ZodObject<{
    title: z.ZodOptional<z.ZodString>;
    description: z.ZodOptional<z.ZodString>;
    categoryId: z.ZodEffects<z.ZodOptional<z.ZodNullable<z.ZodString>>, string | null | undefined, string | null | undefined>;
    priority: z.ZodOptional<z.ZodEnum<["none", "low", "medium", "high", "critical"]>>;
    completed: z.ZodOptional<z.ZodBoolean>;
    dueDate: z.ZodOptional<z.ZodNumber>;
    dueTime: z.ZodEffects<z.ZodUnion<[z.ZodOptional<z.ZodString>, z.ZodLiteral<"">]>, string | undefined, string | undefined>;
    endTime: z.ZodOptional<z.ZodString>;
    reminders: z.ZodOptional<z.ZodString>;
    assigneeId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
    completedAt: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
}, "strip", z.ZodTypeAny, {
    categoryId?: string | null | undefined;
    title?: string | undefined;
    description?: string | undefined;
    priority?: "none" | "low" | "medium" | "high" | "critical" | undefined;
    completed?: boolean | undefined;
    dueDate?: number | undefined;
    dueTime?: string | undefined;
    endTime?: string | undefined;
    assigneeId?: string | null | undefined;
    reminders?: string | undefined;
    completedAt?: number | null | undefined;
}, {
    categoryId?: string | null | undefined;
    title?: string | undefined;
    description?: string | undefined;
    priority?: "none" | "low" | "medium" | "high" | "critical" | undefined;
    completed?: boolean | undefined;
    dueDate?: number | undefined;
    dueTime?: string | undefined;
    endTime?: string | undefined;
    assigneeId?: string | null | undefined;
    reminders?: string | undefined;
    completedAt?: number | null | undefined;
}>;
export declare const subtaskCreateSchema: z.ZodObject<{
    title: z.ZodString;
    description: z.ZodOptional<z.ZodString>;
    priority: z.ZodOptional<z.ZodEnum<["none", "low", "medium", "high", "critical"]>>;
    dueDate: z.ZodOptional<z.ZodNumber>;
    dueTime: z.ZodEffects<z.ZodUnion<[z.ZodOptional<z.ZodString>, z.ZodLiteral<"">]>, string, string | undefined>;
    endTime: z.ZodUnion<[z.ZodOptional<z.ZodString>, z.ZodLiteral<"">]>;
    allDay: z.ZodOptional<z.ZodBoolean>;
    repeat: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodEnum<["none", "daily", "weekly", "monthly", "custom"]>, z.ZodLiteral<"">]>, "custom" | "none" | "daily" | "weekly" | "monthly", "" | "custom" | "none" | "daily" | "weekly" | "monthly">>;
    repeatInterval: z.ZodOptional<z.ZodEffects<z.ZodNumber, number, number>>;
    repeatDays: z.ZodOptional<z.ZodString>;
    seriesId: z.ZodOptional<z.ZodString>;
    reminder: z.ZodOptional<z.ZodEnum<["none", "at_time", "15", "30", "60", "120", "1440"]>>;
    reminders: z.ZodOptional<z.ZodString>;
    assigneeId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
    order: z.ZodOptional<z.ZodNumber>;
    parentSubtaskId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
}, "strip", z.ZodTypeAny, {
    title: string;
    dueTime: string;
    order?: number | undefined;
    description?: string | undefined;
    priority?: "none" | "low" | "medium" | "high" | "critical" | undefined;
    dueDate?: number | undefined;
    endTime?: string | undefined;
    allDay?: boolean | undefined;
    repeat?: "custom" | "none" | "daily" | "weekly" | "monthly" | undefined;
    repeatInterval?: number | undefined;
    repeatDays?: string | undefined;
    seriesId?: string | undefined;
    assigneeId?: string | null | undefined;
    reminder?: "none" | "at_time" | "15" | "30" | "60" | "120" | "1440" | undefined;
    reminders?: string | undefined;
    parentSubtaskId?: string | null | undefined;
}, {
    title: string;
    order?: number | undefined;
    description?: string | undefined;
    priority?: "none" | "low" | "medium" | "high" | "critical" | undefined;
    dueDate?: number | undefined;
    dueTime?: string | undefined;
    endTime?: string | undefined;
    allDay?: boolean | undefined;
    repeat?: "" | "custom" | "none" | "daily" | "weekly" | "monthly" | undefined;
    repeatInterval?: number | undefined;
    repeatDays?: string | undefined;
    seriesId?: string | undefined;
    assigneeId?: string | null | undefined;
    reminder?: "none" | "at_time" | "15" | "30" | "60" | "120" | "1440" | undefined;
    reminders?: string | undefined;
    parentSubtaskId?: string | null | undefined;
}>;
export declare const subtaskUpdateSchema: z.ZodObject<{
    title: z.ZodOptional<z.ZodString>;
    description: z.ZodOptional<z.ZodString>;
    priority: z.ZodOptional<z.ZodEnum<["none", "low", "medium", "high", "critical"]>>;
    completed: z.ZodOptional<z.ZodBoolean>;
    dueDate: z.ZodOptional<z.ZodNumber>;
    dueTime: z.ZodEffects<z.ZodUnion<[z.ZodOptional<z.ZodString>, z.ZodLiteral<"">]>, string | undefined, string | undefined>;
    endTime: z.ZodOptional<z.ZodString>;
    allDay: z.ZodOptional<z.ZodBoolean>;
    repeat: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodEnum<["none", "daily", "weekly", "monthly", "custom"]>, z.ZodLiteral<"">]>, "custom" | "none" | "daily" | "weekly" | "monthly", "" | "custom" | "none" | "daily" | "weekly" | "monthly">>;
    repeatInterval: z.ZodOptional<z.ZodEffects<z.ZodNumber, number, number>>;
    repeatDays: z.ZodOptional<z.ZodString>;
    seriesId: z.ZodOptional<z.ZodString>;
    reminder: z.ZodOptional<z.ZodEnum<["none", "at_time", "15", "30", "60", "120", "1440"]>>;
    reminders: z.ZodOptional<z.ZodString>;
    assigneeId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
    order: z.ZodOptional<z.ZodNumber>;
    parentSubtaskId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
}, "strip", z.ZodTypeAny, {
    order?: number | undefined;
    title?: string | undefined;
    description?: string | undefined;
    priority?: "none" | "low" | "medium" | "high" | "critical" | undefined;
    completed?: boolean | undefined;
    dueDate?: number | undefined;
    dueTime?: string | undefined;
    endTime?: string | undefined;
    allDay?: boolean | undefined;
    repeat?: "custom" | "none" | "daily" | "weekly" | "monthly" | undefined;
    repeatInterval?: number | undefined;
    repeatDays?: string | undefined;
    seriesId?: string | undefined;
    assigneeId?: string | null | undefined;
    reminder?: "none" | "at_time" | "15" | "30" | "60" | "120" | "1440" | undefined;
    reminders?: string | undefined;
    parentSubtaskId?: string | null | undefined;
}, {
    order?: number | undefined;
    title?: string | undefined;
    description?: string | undefined;
    priority?: "none" | "low" | "medium" | "high" | "critical" | undefined;
    completed?: boolean | undefined;
    dueDate?: number | undefined;
    dueTime?: string | undefined;
    endTime?: string | undefined;
    allDay?: boolean | undefined;
    repeat?: "" | "custom" | "none" | "daily" | "weekly" | "monthly" | undefined;
    repeatInterval?: number | undefined;
    repeatDays?: string | undefined;
    seriesId?: string | undefined;
    assigneeId?: string | null | undefined;
    reminder?: "none" | "at_time" | "15" | "30" | "60" | "120" | "1440" | undefined;
    reminders?: string | undefined;
    parentSubtaskId?: string | null | undefined;
}>;
export declare const userSettingsSchema: z.ZodObject<{
    darkMode: z.ZodOptional<z.ZodBoolean>;
    notifications: z.ZodOptional<z.ZodBoolean>;
    reminderTime: z.ZodOptional<z.ZodString>;
    defaultCategory: z.ZodNullable<z.ZodOptional<z.ZodString>>;
    sortBy: z.ZodOptional<z.ZodEnum<["dueDate", "priority", "title", "createdAt"]>>;
    sortOrder: z.ZodOptional<z.ZodEnum<["asc", "desc"]>>;
}, "strip", z.ZodTypeAny, {
    darkMode?: boolean | undefined;
    notifications?: boolean | undefined;
    reminderTime?: string | undefined;
    defaultCategory?: string | null | undefined;
    sortBy?: "createdAt" | "title" | "priority" | "dueDate" | undefined;
    sortOrder?: "asc" | "desc" | undefined;
}, {
    darkMode?: boolean | undefined;
    notifications?: boolean | undefined;
    reminderTime?: string | undefined;
    defaultCategory?: string | null | undefined;
    sortBy?: "createdAt" | "title" | "priority" | "dueDate" | undefined;
    sortOrder?: "asc" | "desc" | undefined;
}>;
export declare const repeatProfileSchema: z.ZodObject<{
    name: z.ZodString;
    repeat: z.ZodEnum<["none", "daily", "weekly", "monthly", "custom"]>;
    repeatInterval: z.ZodNumber;
    repeatDays: z.ZodString;
}, "strip", z.ZodTypeAny, {
    name: string;
    repeat: "custom" | "none" | "daily" | "weekly" | "monthly";
    repeatInterval: number;
    repeatDays: string;
}, {
    name: string;
    repeat: "custom" | "none" | "daily" | "weekly" | "monthly";
    repeatInterval: number;
    repeatDays: string;
}>;
export declare const repeatProfileUpdateSchema: z.ZodObject<{
    name: z.ZodOptional<z.ZodString>;
    repeat: z.ZodOptional<z.ZodEnum<["none", "daily", "weekly", "monthly", "custom"]>>;
    repeatInterval: z.ZodOptional<z.ZodNumber>;
    repeatDays: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
    name?: string | undefined;
    repeat?: "custom" | "none" | "daily" | "weekly" | "monthly" | undefined;
    repeatInterval?: number | undefined;
    repeatDays?: string | undefined;
}, {
    name?: string | undefined;
    repeat?: "custom" | "none" | "daily" | "weekly" | "monthly" | undefined;
    repeatInterval?: number | undefined;
    repeatDays?: string | undefined;
}>;
export declare const searchQuerySchema: z.ZodObject<{
    q: z.ZodString;
}, "strip", z.ZodTypeAny, {
    q: string;
}, {
    q: string;
}>;
export declare const friendRequestSchema: z.ZodObject<{
    username: z.ZodString;
}, "strip", z.ZodTypeAny, {
    username: string;
}, {
    username: string;
}>;
export declare const friendshipSchema: z.ZodObject<{
    id: z.ZodString;
    userId: z.ZodString;
    friendId: z.ZodString;
    status: z.ZodEnum<["pending", "accepted"]>;
    createdAt: z.ZodNumber;
    updatedAt: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
    id: string;
    createdAt: number;
    userId: string;
    friendId: string;
    status: "pending" | "accepted";
    updatedAt: number;
}, {
    id: string;
    createdAt: number;
    userId: string;
    friendId: string;
    status: "pending" | "accepted";
    updatedAt: number;
}>;
export declare const tombstoneSchema: z.ZodObject<{
    entity: z.ZodEnum<["categories", "tasks", "subtasks", "repeatProfiles", "friendships"]>;
    id: z.ZodString;
    updatedAt: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
    id: string;
    updatedAt: number;
    entity: "categories" | "tasks" | "subtasks" | "repeatProfiles" | "friendships";
}, {
    id: string;
    updatedAt: number;
    entity: "categories" | "tasks" | "subtasks" | "repeatProfiles" | "friendships";
}>;
export declare const pushChangesSchema: z.ZodObject<{
    changes: z.ZodObject<{
        categories: z.ZodOptional<z.ZodArray<z.ZodObject<{
            name: z.ZodString;
            color: z.ZodString;
            order: z.ZodOptional<z.ZodNumber>;
        } & {
            id: z.ZodString;
            createdAt: z.ZodNumber;
            updatedAt: z.ZodNumber;
        }, "strip", z.ZodTypeAny, {
            id: string;
            name: string;
            createdAt: number;
            updatedAt: number;
            color: string;
            order?: number | undefined;
        }, {
            id: string;
            name: string;
            createdAt: number;
            updatedAt: number;
            color: string;
            order?: number | undefined;
        }>, "many">>;
        tasks: z.ZodOptional<z.ZodArray<z.ZodObject<{
            title: z.ZodString;
            description: z.ZodOptional<z.ZodString>;
            categoryId: z.ZodNullable<z.ZodEffects<z.ZodString, string | null, string>>;
            priority: z.ZodOptional<z.ZodEnum<["none", "low", "medium", "high", "critical"]>>;
            dueDate: z.ZodOptional<z.ZodNumber>;
            dueTime: z.ZodEffects<z.ZodUnion<[z.ZodOptional<z.ZodString>, z.ZodLiteral<"">]>, string, string | undefined>;
            endTime: z.ZodUnion<[z.ZodOptional<z.ZodString>, z.ZodLiteral<"">]>;
            allDay: z.ZodOptional<z.ZodBoolean>;
            repeat: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodEnum<["none", "daily", "weekly", "monthly", "custom"]>, z.ZodLiteral<"">]>, "custom" | "none" | "daily" | "weekly" | "monthly", "" | "custom" | "none" | "daily" | "weekly" | "monthly">>;
            repeatInterval: z.ZodOptional<z.ZodEffects<z.ZodNumber, number, number>>;
            repeatDays: z.ZodOptional<z.ZodString>;
            seriesId: z.ZodOptional<z.ZodString>;
            reminder: z.ZodOptional<z.ZodEnum<["none", "at_time", "15", "30", "60", "120", "1440"]>>;
            reminders: z.ZodOptional<z.ZodString>;
            assigneeId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
            subtasks: z.ZodOptional<z.ZodArray<z.ZodObject<{
                title: z.ZodString;
            }, "strip", z.ZodTypeAny, {
                title: string;
            }, {
                title: string;
            }>, "many">>;
        } & {
            id: z.ZodString;
            completed: z.ZodBoolean;
            createdAt: z.ZodNumber;
            updatedAt: z.ZodNumber;
            completedAt: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
        }, "strip", z.ZodTypeAny, {
            id: string;
            createdAt: number;
            updatedAt: number;
            categoryId: string | null;
            title: string;
            completed: boolean;
            dueTime: string;
            subtasks?: {
                title: string;
            }[] | undefined;
            description?: string | undefined;
            priority?: "none" | "low" | "medium" | "high" | "critical" | undefined;
            dueDate?: number | undefined;
            endTime?: string | undefined;
            allDay?: boolean | undefined;
            repeat?: "custom" | "none" | "daily" | "weekly" | "monthly" | undefined;
            repeatInterval?: number | undefined;
            repeatDays?: string | undefined;
            seriesId?: string | undefined;
            assigneeId?: string | null | undefined;
            reminder?: "none" | "at_time" | "15" | "30" | "60" | "120" | "1440" | undefined;
            reminders?: string | undefined;
            completedAt?: number | null | undefined;
        }, {
            id: string;
            createdAt: number;
            updatedAt: number;
            categoryId: string | null;
            title: string;
            completed: boolean;
            subtasks?: {
                title: string;
            }[] | undefined;
            description?: string | undefined;
            priority?: "none" | "low" | "medium" | "high" | "critical" | undefined;
            dueDate?: number | undefined;
            dueTime?: string | undefined;
            endTime?: string | undefined;
            allDay?: boolean | undefined;
            repeat?: "" | "custom" | "none" | "daily" | "weekly" | "monthly" | undefined;
            repeatInterval?: number | undefined;
            repeatDays?: string | undefined;
            seriesId?: string | undefined;
            assigneeId?: string | null | undefined;
            reminder?: "none" | "at_time" | "15" | "30" | "60" | "120" | "1440" | undefined;
            reminders?: string | undefined;
            completedAt?: number | null | undefined;
        }>, "many">>;
        subtasks: z.ZodOptional<z.ZodArray<z.ZodObject<{
            title: z.ZodString;
            description: z.ZodOptional<z.ZodString>;
            priority: z.ZodOptional<z.ZodEnum<["none", "low", "medium", "high", "critical"]>>;
            dueDate: z.ZodOptional<z.ZodNumber>;
            dueTime: z.ZodEffects<z.ZodUnion<[z.ZodOptional<z.ZodString>, z.ZodLiteral<"">]>, string, string | undefined>;
            endTime: z.ZodUnion<[z.ZodOptional<z.ZodString>, z.ZodLiteral<"">]>;
            allDay: z.ZodOptional<z.ZodBoolean>;
            repeat: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodEnum<["none", "daily", "weekly", "monthly", "custom"]>, z.ZodLiteral<"">]>, "custom" | "none" | "daily" | "weekly" | "monthly", "" | "custom" | "none" | "daily" | "weekly" | "monthly">>;
            repeatInterval: z.ZodOptional<z.ZodEffects<z.ZodNumber, number, number>>;
            repeatDays: z.ZodOptional<z.ZodString>;
            seriesId: z.ZodOptional<z.ZodString>;
            reminder: z.ZodOptional<z.ZodEnum<["none", "at_time", "15", "30", "60", "120", "1440"]>>;
            reminders: z.ZodOptional<z.ZodString>;
            assigneeId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
            order: z.ZodOptional<z.ZodNumber>;
            parentSubtaskId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
        } & {
            id: z.ZodString;
            taskId: z.ZodString;
            completed: z.ZodBoolean;
            createdAt: z.ZodNumber;
            updatedAt: z.ZodNumber;
        }, "strip", z.ZodTypeAny, {
            id: string;
            createdAt: number;
            updatedAt: number;
            title: string;
            completed: boolean;
            dueTime: string;
            taskId: string;
            order?: number | undefined;
            description?: string | undefined;
            priority?: "none" | "low" | "medium" | "high" | "critical" | undefined;
            dueDate?: number | undefined;
            endTime?: string | undefined;
            allDay?: boolean | undefined;
            repeat?: "custom" | "none" | "daily" | "weekly" | "monthly" | undefined;
            repeatInterval?: number | undefined;
            repeatDays?: string | undefined;
            seriesId?: string | undefined;
            assigneeId?: string | null | undefined;
            reminder?: "none" | "at_time" | "15" | "30" | "60" | "120" | "1440" | undefined;
            reminders?: string | undefined;
            parentSubtaskId?: string | null | undefined;
        }, {
            id: string;
            createdAt: number;
            updatedAt: number;
            title: string;
            completed: boolean;
            taskId: string;
            order?: number | undefined;
            description?: string | undefined;
            priority?: "none" | "low" | "medium" | "high" | "critical" | undefined;
            dueDate?: number | undefined;
            dueTime?: string | undefined;
            endTime?: string | undefined;
            allDay?: boolean | undefined;
            repeat?: "" | "custom" | "none" | "daily" | "weekly" | "monthly" | undefined;
            repeatInterval?: number | undefined;
            repeatDays?: string | undefined;
            seriesId?: string | undefined;
            assigneeId?: string | null | undefined;
            reminder?: "none" | "at_time" | "15" | "30" | "60" | "120" | "1440" | undefined;
            reminders?: string | undefined;
            parentSubtaskId?: string | null | undefined;
        }>, "many">>;
        repeatProfiles: z.ZodOptional<z.ZodArray<z.ZodObject<{
            name: z.ZodString;
            repeat: z.ZodEnum<["none", "daily", "weekly", "monthly", "custom"]>;
            repeatInterval: z.ZodNumber;
            repeatDays: z.ZodString;
        } & {
            id: z.ZodString;
            createdAt: z.ZodNumber;
            updatedAt: z.ZodNumber;
        }, "strip", z.ZodTypeAny, {
            id: string;
            name: string;
            createdAt: number;
            updatedAt: number;
            repeat: "custom" | "none" | "daily" | "weekly" | "monthly";
            repeatInterval: number;
            repeatDays: string;
        }, {
            id: string;
            name: string;
            createdAt: number;
            updatedAt: number;
            repeat: "custom" | "none" | "daily" | "weekly" | "monthly";
            repeatInterval: number;
            repeatDays: string;
        }>, "many">>;
        friendships: z.ZodOptional<z.ZodArray<z.ZodObject<{
            id: z.ZodString;
            userId: z.ZodString;
            friendId: z.ZodString;
            status: z.ZodEnum<["pending", "accepted"]>;
            createdAt: z.ZodNumber;
            updatedAt: z.ZodNumber;
        }, "strip", z.ZodTypeAny, {
            id: string;
            createdAt: number;
            userId: string;
            friendId: string;
            status: "pending" | "accepted";
            updatedAt: number;
        }, {
            id: string;
            createdAt: number;
            userId: string;
            friendId: string;
            status: "pending" | "accepted";
            updatedAt: number;
        }>, "many">>;
    }, "strip", z.ZodTypeAny, {
        categories?: {
            id: string;
            name: string;
            createdAt: number;
            updatedAt: number;
            color: string;
            order?: number | undefined;
        }[] | undefined;
        tasks?: {
            id: string;
            createdAt: number;
            updatedAt: number;
            categoryId: string | null;
            title: string;
            completed: boolean;
            dueTime: string;
            subtasks?: {
                title: string;
            }[] | undefined;
            description?: string | undefined;
            priority?: "none" | "low" | "medium" | "high" | "critical" | undefined;
            dueDate?: number | undefined;
            endTime?: string | undefined;
            allDay?: boolean | undefined;
            repeat?: "custom" | "none" | "daily" | "weekly" | "monthly" | undefined;
            repeatInterval?: number | undefined;
            repeatDays?: string | undefined;
            seriesId?: string | undefined;
            assigneeId?: string | null | undefined;
            reminder?: "none" | "at_time" | "15" | "30" | "60" | "120" | "1440" | undefined;
            reminders?: string | undefined;
            completedAt?: number | null | undefined;
        }[] | undefined;
        subtasks?: {
            id: string;
            createdAt: number;
            updatedAt: number;
            title: string;
            completed: boolean;
            dueTime: string;
            taskId: string;
            order?: number | undefined;
            description?: string | undefined;
            priority?: "none" | "low" | "medium" | "high" | "critical" | undefined;
            dueDate?: number | undefined;
            endTime?: string | undefined;
            allDay?: boolean | undefined;
            repeat?: "custom" | "none" | "daily" | "weekly" | "monthly" | undefined;
            repeatInterval?: number | undefined;
            repeatDays?: string | undefined;
            seriesId?: string | undefined;
            assigneeId?: string | null | undefined;
            reminder?: "none" | "at_time" | "15" | "30" | "60" | "120" | "1440" | undefined;
            reminders?: string | undefined;
            parentSubtaskId?: string | null | undefined;
        }[] | undefined;
        repeatProfiles?: {
            id: string;
            name: string;
            createdAt: number;
            updatedAt: number;
            repeat: "custom" | "none" | "daily" | "weekly" | "monthly";
            repeatInterval: number;
            repeatDays: string;
        }[] | undefined;
        friendships?: {
            id: string;
            createdAt: number;
            userId: string;
            friendId: string;
            status: "pending" | "accepted";
            updatedAt: number;
        }[] | undefined;
    }, {
        categories?: {
            id: string;
            name: string;
            createdAt: number;
            updatedAt: number;
            color: string;
            order?: number | undefined;
        }[] | undefined;
        tasks?: {
            id: string;
            createdAt: number;
            updatedAt: number;
            categoryId: string | null;
            title: string;
            completed: boolean;
            subtasks?: {
                title: string;
            }[] | undefined;
            description?: string | undefined;
            priority?: "none" | "low" | "medium" | "high" | "critical" | undefined;
            dueDate?: number | undefined;
            dueTime?: string | undefined;
            endTime?: string | undefined;
            allDay?: boolean | undefined;
            repeat?: "" | "custom" | "none" | "daily" | "weekly" | "monthly" | undefined;
            repeatInterval?: number | undefined;
            repeatDays?: string | undefined;
            seriesId?: string | undefined;
            assigneeId?: string | null | undefined;
            reminder?: "none" | "at_time" | "15" | "30" | "60" | "120" | "1440" | undefined;
            reminders?: string | undefined;
            completedAt?: number | null | undefined;
        }[] | undefined;
        subtasks?: {
            id: string;
            createdAt: number;
            updatedAt: number;
            title: string;
            completed: boolean;
            taskId: string;
            order?: number | undefined;
            description?: string | undefined;
            priority?: "none" | "low" | "medium" | "high" | "critical" | undefined;
            dueDate?: number | undefined;
            dueTime?: string | undefined;
            endTime?: string | undefined;
            allDay?: boolean | undefined;
            repeat?: "" | "custom" | "none" | "daily" | "weekly" | "monthly" | undefined;
            repeatInterval?: number | undefined;
            repeatDays?: string | undefined;
            seriesId?: string | undefined;
            assigneeId?: string | null | undefined;
            reminder?: "none" | "at_time" | "15" | "30" | "60" | "120" | "1440" | undefined;
            reminders?: string | undefined;
            parentSubtaskId?: string | null | undefined;
        }[] | undefined;
        repeatProfiles?: {
            id: string;
            name: string;
            createdAt: number;
            updatedAt: number;
            repeat: "custom" | "none" | "daily" | "weekly" | "monthly";
            repeatInterval: number;
            repeatDays: string;
        }[] | undefined;
        friendships?: {
            id: string;
            createdAt: number;
            userId: string;
            friendId: string;
            status: "pending" | "accepted";
            updatedAt: number;
        }[] | undefined;
    }>;
    deleted: z.ZodOptional<z.ZodArray<z.ZodObject<{
        entity: z.ZodEnum<["categories", "tasks", "subtasks", "repeatProfiles", "friendships"]>;
        id: z.ZodString;
        updatedAt: z.ZodNumber;
    }, "strip", z.ZodTypeAny, {
        id: string;
        updatedAt: number;
        entity: "categories" | "tasks" | "subtasks" | "repeatProfiles" | "friendships";
    }, {
        id: string;
        updatedAt: number;
        entity: "categories" | "tasks" | "subtasks" | "repeatProfiles" | "friendships";
    }>, "many">>;
    lastPulledAt: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
    changes: {
        categories?: {
            id: string;
            name: string;
            createdAt: number;
            updatedAt: number;
            color: string;
            order?: number | undefined;
        }[] | undefined;
        tasks?: {
            id: string;
            createdAt: number;
            updatedAt: number;
            categoryId: string | null;
            title: string;
            completed: boolean;
            dueTime: string;
            subtasks?: {
                title: string;
            }[] | undefined;
            description?: string | undefined;
            priority?: "none" | "low" | "medium" | "high" | "critical" | undefined;
            dueDate?: number | undefined;
            endTime?: string | undefined;
            allDay?: boolean | undefined;
            repeat?: "custom" | "none" | "daily" | "weekly" | "monthly" | undefined;
            repeatInterval?: number | undefined;
            repeatDays?: string | undefined;
            seriesId?: string | undefined;
            assigneeId?: string | null | undefined;
            reminder?: "none" | "at_time" | "15" | "30" | "60" | "120" | "1440" | undefined;
            reminders?: string | undefined;
            completedAt?: number | null | undefined;
        }[] | undefined;
        subtasks?: {
            id: string;
            createdAt: number;
            updatedAt: number;
            title: string;
            completed: boolean;
            dueTime: string;
            taskId: string;
            order?: number | undefined;
            description?: string | undefined;
            priority?: "none" | "low" | "medium" | "high" | "critical" | undefined;
            dueDate?: number | undefined;
            endTime?: string | undefined;
            allDay?: boolean | undefined;
            repeat?: "custom" | "none" | "daily" | "weekly" | "monthly" | undefined;
            repeatInterval?: number | undefined;
            repeatDays?: string | undefined;
            seriesId?: string | undefined;
            assigneeId?: string | null | undefined;
            reminder?: "none" | "at_time" | "15" | "30" | "60" | "120" | "1440" | undefined;
            reminders?: string | undefined;
            parentSubtaskId?: string | null | undefined;
        }[] | undefined;
        repeatProfiles?: {
            id: string;
            name: string;
            createdAt: number;
            updatedAt: number;
            repeat: "custom" | "none" | "daily" | "weekly" | "monthly";
            repeatInterval: number;
            repeatDays: string;
        }[] | undefined;
        friendships?: {
            id: string;
            createdAt: number;
            userId: string;
            friendId: string;
            status: "pending" | "accepted";
            updatedAt: number;
        }[] | undefined;
    };
    lastPulledAt: number;
    deleted?: {
        id: string;
        updatedAt: number;
        entity: "categories" | "tasks" | "subtasks" | "repeatProfiles" | "friendships";
    }[] | undefined;
}, {
    changes: {
        categories?: {
            id: string;
            name: string;
            createdAt: number;
            updatedAt: number;
            color: string;
            order?: number | undefined;
        }[] | undefined;
        tasks?: {
            id: string;
            createdAt: number;
            updatedAt: number;
            categoryId: string | null;
            title: string;
            completed: boolean;
            subtasks?: {
                title: string;
            }[] | undefined;
            description?: string | undefined;
            priority?: "none" | "low" | "medium" | "high" | "critical" | undefined;
            dueDate?: number | undefined;
            dueTime?: string | undefined;
            endTime?: string | undefined;
            allDay?: boolean | undefined;
            repeat?: "" | "custom" | "none" | "daily" | "weekly" | "monthly" | undefined;
            repeatInterval?: number | undefined;
            repeatDays?: string | undefined;
            seriesId?: string | undefined;
            assigneeId?: string | null | undefined;
            reminder?: "none" | "at_time" | "15" | "30" | "60" | "120" | "1440" | undefined;
            reminders?: string | undefined;
            completedAt?: number | null | undefined;
        }[] | undefined;
        subtasks?: {
            id: string;
            createdAt: number;
            updatedAt: number;
            title: string;
            completed: boolean;
            taskId: string;
            order?: number | undefined;
            description?: string | undefined;
            priority?: "none" | "low" | "medium" | "high" | "critical" | undefined;
            dueDate?: number | undefined;
            dueTime?: string | undefined;
            endTime?: string | undefined;
            allDay?: boolean | undefined;
            repeat?: "" | "custom" | "none" | "daily" | "weekly" | "monthly" | undefined;
            repeatInterval?: number | undefined;
            repeatDays?: string | undefined;
            seriesId?: string | undefined;
            assigneeId?: string | null | undefined;
            reminder?: "none" | "at_time" | "15" | "30" | "60" | "120" | "1440" | undefined;
            reminders?: string | undefined;
            parentSubtaskId?: string | null | undefined;
        }[] | undefined;
        repeatProfiles?: {
            id: string;
            name: string;
            createdAt: number;
            updatedAt: number;
            repeat: "custom" | "none" | "daily" | "weekly" | "monthly";
            repeatInterval: number;
            repeatDays: string;
        }[] | undefined;
        friendships?: {
            id: string;
            createdAt: number;
            userId: string;
            friendId: string;
            status: "pending" | "accepted";
            updatedAt: number;
        }[] | undefined;
    };
    lastPulledAt: number;
    deleted?: {
        id: string;
        updatedAt: number;
        entity: "categories" | "tasks" | "subtasks" | "repeatProfiles" | "friendships";
    }[] | undefined;
}>;
export declare const syncQuerySchema: z.ZodObject<{
    since: z.ZodPipeline<z.ZodEffects<z.ZodString, number, string>, z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
    since: number;
}, {
    since: string;
}>;
export declare const taskQuerySchema: z.ZodObject<{
    categoryId: z.ZodOptional<z.ZodString>;
    completed: z.ZodOptional<z.ZodEffects<z.ZodString, boolean, string>>;
    dueBefore: z.ZodOptional<z.ZodPipeline<z.ZodEffects<z.ZodString, number, string>, z.ZodNumber>>;
    dueAfter: z.ZodOptional<z.ZodPipeline<z.ZodEffects<z.ZodString, number, string>, z.ZodNumber>>;
    priority: z.ZodOptional<z.ZodEnum<["none", "low", "medium", "high", "critical"]>>;
    sortBy: z.ZodOptional<z.ZodEnum<["dueDate", "priority", "createdAt", "title"]>>;
    sortOrder: z.ZodOptional<z.ZodEnum<["asc", "desc"]>>;
    limit: z.ZodOptional<z.ZodPipeline<z.ZodEffects<z.ZodString, number, string>, z.ZodNumber>>;
    offset: z.ZodOptional<z.ZodPipeline<z.ZodEffects<z.ZodString, number, string>, z.ZodNumber>>;
}, "strip", z.ZodTypeAny, {
    categoryId?: string | undefined;
    priority?: "none" | "low" | "medium" | "high" | "critical" | undefined;
    completed?: boolean | undefined;
    sortBy?: "createdAt" | "title" | "priority" | "dueDate" | undefined;
    sortOrder?: "asc" | "desc" | undefined;
    limit?: number | undefined;
    offset?: number | undefined;
    dueBefore?: number | undefined;
    dueAfter?: number | undefined;
}, {
    categoryId?: string | undefined;
    priority?: "none" | "low" | "medium" | "high" | "critical" | undefined;
    completed?: string | undefined;
    sortBy?: "createdAt" | "title" | "priority" | "dueDate" | undefined;
    sortOrder?: "asc" | "desc" | undefined;
    limit?: string | undefined;
    offset?: string | undefined;
    dueBefore?: string | undefined;
    dueAfter?: string | undefined;
}>;
//# sourceMappingURL=validation.d.ts.map