import { z } from 'zod';
export declare const loginRequestSchema: z.ZodObject<{
    username: z.ZodString;
    password: z.ZodString;
}, "strip", z.ZodTypeAny, {
    username: string;
    password: string;
}, {
    username: string;
    password: string;
}>;
export type LoginRequest = z.infer<typeof loginRequestSchema>;
export declare const sessionUserSchema: z.ZodObject<{
    id: z.ZodString;
    organizationId: z.ZodString;
    username: z.ZodString;
    fullName: z.ZodString;
    email: z.ZodOptional<z.ZodNullable<z.ZodString>>;
    isSuperAdmin: z.ZodBoolean;
    mustResetPassword: z.ZodBoolean;
    permissions: z.ZodArray<z.ZodString, "many">;
    roles: z.ZodArray<z.ZodString, "many">;
}, "strip", z.ZodTypeAny, {
    username: string;
    id: string;
    organizationId: string;
    fullName: string;
    isSuperAdmin: boolean;
    mustResetPassword: boolean;
    permissions: string[];
    roles: string[];
    email?: string | null | undefined;
}, {
    username: string;
    id: string;
    organizationId: string;
    fullName: string;
    isSuperAdmin: boolean;
    mustResetPassword: boolean;
    permissions: string[];
    roles: string[];
    email?: string | null | undefined;
}>;
export type SessionUser = z.infer<typeof sessionUserSchema>;
export declare const loginResponseSchema: z.ZodObject<{
    user: z.ZodObject<{
        id: z.ZodString;
        organizationId: z.ZodString;
        username: z.ZodString;
        fullName: z.ZodString;
        email: z.ZodOptional<z.ZodNullable<z.ZodString>>;
        isSuperAdmin: z.ZodBoolean;
        mustResetPassword: z.ZodBoolean;
        permissions: z.ZodArray<z.ZodString, "many">;
        roles: z.ZodArray<z.ZodString, "many">;
    }, "strip", z.ZodTypeAny, {
        username: string;
        id: string;
        organizationId: string;
        fullName: string;
        isSuperAdmin: boolean;
        mustResetPassword: boolean;
        permissions: string[];
        roles: string[];
        email?: string | null | undefined;
    }, {
        username: string;
        id: string;
        organizationId: string;
        fullName: string;
        isSuperAdmin: boolean;
        mustResetPassword: boolean;
        permissions: string[];
        roles: string[];
        email?: string | null | undefined;
    }>;
}, "strip", z.ZodTypeAny, {
    user: {
        username: string;
        id: string;
        organizationId: string;
        fullName: string;
        isSuperAdmin: boolean;
        mustResetPassword: boolean;
        permissions: string[];
        roles: string[];
        email?: string | null | undefined;
    };
}, {
    user: {
        username: string;
        id: string;
        organizationId: string;
        fullName: string;
        isSuperAdmin: boolean;
        mustResetPassword: boolean;
        permissions: string[];
        roles: string[];
        email?: string | null | undefined;
    };
}>;
export type LoginResponse = z.infer<typeof loginResponseSchema>;
export declare const changePasswordRequestSchema: z.ZodObject<{
    currentPassword: z.ZodString;
    newPassword: z.ZodString;
}, "strip", z.ZodTypeAny, {
    currentPassword: string;
    newPassword: string;
}, {
    currentPassword: string;
    newPassword: string;
}>;
export type ChangePasswordRequest = z.infer<typeof changePasswordRequestSchema>;
export declare const meResponseSchema: z.ZodObject<{
    user: z.ZodObject<{
        id: z.ZodString;
        organizationId: z.ZodString;
        username: z.ZodString;
        fullName: z.ZodString;
        email: z.ZodOptional<z.ZodNullable<z.ZodString>>;
        isSuperAdmin: z.ZodBoolean;
        mustResetPassword: z.ZodBoolean;
        permissions: z.ZodArray<z.ZodString, "many">;
        roles: z.ZodArray<z.ZodString, "many">;
    }, "strip", z.ZodTypeAny, {
        username: string;
        id: string;
        organizationId: string;
        fullName: string;
        isSuperAdmin: boolean;
        mustResetPassword: boolean;
        permissions: string[];
        roles: string[];
        email?: string | null | undefined;
    }, {
        username: string;
        id: string;
        organizationId: string;
        fullName: string;
        isSuperAdmin: boolean;
        mustResetPassword: boolean;
        permissions: string[];
        roles: string[];
        email?: string | null | undefined;
    }>;
    organization: z.ZodObject<{
        id: z.ZodString;
        code: z.ZodString;
        name: z.ZodString;
        businessName: z.ZodOptional<z.ZodString>;
        timezone: z.ZodOptional<z.ZodString>;
        currencyCode: z.ZodOptional<z.ZodString>;
    }, "strip", z.ZodTypeAny, {
        code: string;
        id: string;
        name: string;
        businessName?: string | undefined;
        timezone?: string | undefined;
        currencyCode?: string | undefined;
    }, {
        code: string;
        id: string;
        name: string;
        businessName?: string | undefined;
        timezone?: string | undefined;
        currencyCode?: string | undefined;
    }>;
}, "strip", z.ZodTypeAny, {
    user: {
        username: string;
        id: string;
        organizationId: string;
        fullName: string;
        isSuperAdmin: boolean;
        mustResetPassword: boolean;
        permissions: string[];
        roles: string[];
        email?: string | null | undefined;
    };
    organization: {
        code: string;
        id: string;
        name: string;
        businessName?: string | undefined;
        timezone?: string | undefined;
        currencyCode?: string | undefined;
    };
}, {
    user: {
        username: string;
        id: string;
        organizationId: string;
        fullName: string;
        isSuperAdmin: boolean;
        mustResetPassword: boolean;
        permissions: string[];
        roles: string[];
        email?: string | null | undefined;
    };
    organization: {
        code: string;
        id: string;
        name: string;
        businessName?: string | undefined;
        timezone?: string | undefined;
        currencyCode?: string | undefined;
    };
}>;
export type MeResponse = z.infer<typeof meResponseSchema>;
//# sourceMappingURL=auth.d.ts.map