import { z } from "zod";
export declare const CreateTaskRequest: z.ZodObject<{
    title: z.ZodString;
    description: z.ZodOptional<z.ZodString>;
    assigneeUserId: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
    dueAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
    channelId: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
    status: z.ZodOptional<z.ZodEnum<["todo", "in_progress", "done"]>>;
}, "strip", z.ZodTypeAny, {
    title: string;
    description?: string | undefined;
    status?: "todo" | "in_progress" | "done" | undefined;
    channelId?: number | null | undefined;
    assigneeUserId?: number | null | undefined;
    dueAt?: string | null | undefined;
}, {
    title: string;
    description?: string | undefined;
    status?: "todo" | "in_progress" | "done" | undefined;
    channelId?: number | null | undefined;
    assigneeUserId?: number | null | undefined;
    dueAt?: string | null | undefined;
}>;
export type CreateTaskRequest = z.infer<typeof CreateTaskRequest>;
export declare const UpdateTaskRequest: z.ZodObject<{
    title: z.ZodOptional<z.ZodString>;
    description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
    dueAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
    channelId: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
}, "strip", z.ZodTypeAny, {
    description?: string | null | undefined;
    title?: string | undefined;
    channelId?: number | null | undefined;
    dueAt?: string | null | undefined;
}, {
    description?: string | null | undefined;
    title?: string | undefined;
    channelId?: number | null | undefined;
    dueAt?: string | null | undefined;
}>;
export type UpdateTaskRequest = z.infer<typeof UpdateTaskRequest>;
export declare const AssignTaskRequest: z.ZodObject<{
    assigneeUserId: z.ZodNullable<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
    assigneeUserId: number | null;
}, {
    assigneeUserId: number | null;
}>;
export type AssignTaskRequest = z.infer<typeof AssignTaskRequest>;
export declare const UpdateTaskStatusRequest: z.ZodObject<{
    status: z.ZodEnum<["todo", "in_progress", "done"]>;
}, "strip", z.ZodTypeAny, {
    status: "todo" | "in_progress" | "done";
}, {
    status: "todo" | "in_progress" | "done";
}>;
export type UpdateTaskStatusRequest = z.infer<typeof UpdateTaskStatusRequest>;
export declare const ListTasksQuery: z.ZodObject<{
    status: z.ZodOptional<z.ZodEnum<["todo", "in_progress", "done"]>>;
    assigneeUserId: z.ZodOptional<z.ZodNumber>;
    channelId: z.ZodOptional<z.ZodNumber>;
    mine: z.ZodOptional<z.ZodEffects<z.ZodEnum<["true", "false", "1", "0"]>, boolean, "0" | "1" | "true" | "false">>;
    /** When true, only soft-deleted tasks; otherwise only active ones. */
    deleted: z.ZodOptional<z.ZodEffects<z.ZodEnum<["true", "false", "1", "0"]>, boolean, "0" | "1" | "true" | "false">>;
    dueBefore: z.ZodOptional<z.ZodString>;
    dueAfter: z.ZodOptional<z.ZodString>;
    limit: z.ZodDefault<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
    limit: number;
    status?: "todo" | "in_progress" | "done" | undefined;
    channelId?: number | undefined;
    assigneeUserId?: number | undefined;
    mine?: boolean | undefined;
    deleted?: boolean | undefined;
    dueBefore?: string | undefined;
    dueAfter?: string | undefined;
}, {
    status?: "todo" | "in_progress" | "done" | undefined;
    channelId?: number | undefined;
    assigneeUserId?: number | undefined;
    mine?: "0" | "1" | "true" | "false" | undefined;
    limit?: number | undefined;
    deleted?: "0" | "1" | "true" | "false" | undefined;
    dueBefore?: string | undefined;
    dueAfter?: string | undefined;
}>;
export type ListTasksQuery = z.infer<typeof ListTasksQuery>;
export declare const CreateTaskFromMessageRequest: z.ZodObject<{
    title: z.ZodOptional<z.ZodString>;
    description: z.ZodOptional<z.ZodString>;
    assigneeUserId: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
    dueAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
}, "strip", z.ZodTypeAny, {
    description?: string | undefined;
    title?: string | undefined;
    assigneeUserId?: number | null | undefined;
    dueAt?: string | null | undefined;
}, {
    description?: string | undefined;
    title?: string | undefined;
    assigneeUserId?: number | null | undefined;
    dueAt?: string | null | undefined;
}>;
export type CreateTaskFromMessageRequest = z.infer<typeof CreateTaskFromMessageRequest>;
//# sourceMappingURL=tasks-http.d.ts.map