import { z } from "zod";
export declare const BucketSchema: z.ZodObject<{
    $id: z.ZodString;
    name: z.ZodString;
    permissions: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodObject<{
        permission: z.ZodString;
        target: z.ZodString;
    }, "strip", z.ZodTypeAny, {
        permission: string;
        target: string;
    }, {
        permission: string;
        target: string;
    }>, z.ZodEffects<z.ZodString, {
        permission: string;
        target: string;
    }, string>]>, "many">>>;
    fileSecurity: z.ZodOptional<z.ZodBoolean>;
    enabled: z.ZodOptional<z.ZodBoolean>;
    maximumFileSize: z.ZodOptional<z.ZodNumber>;
    allowedFileExtensions: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
    compression: z.ZodOptional<z.ZodEnum<["none", "gzip", "zstd"]>>;
    encryption: z.ZodOptional<z.ZodBoolean>;
    antivirus: z.ZodOptional<z.ZodBoolean>;
}, "strip", z.ZodTypeAny, {
    name: string;
    $id: string;
    enabled?: boolean | undefined;
    permissions?: ({
        permission: string;
        target: string;
    } | {
        permission: string;
        target: string;
    })[] | undefined;
    fileSecurity?: boolean | undefined;
    maximumFileSize?: number | undefined;
    allowedFileExtensions?: string[] | undefined;
    compression?: "none" | "gzip" | "zstd" | undefined;
    encryption?: boolean | undefined;
    antivirus?: boolean | undefined;
}, {
    name: string;
    $id: string;
    enabled?: boolean | undefined;
    permissions?: (string | {
        permission: string;
        target: string;
    })[] | undefined;
    fileSecurity?: boolean | undefined;
    maximumFileSize?: number | undefined;
    allowedFileExtensions?: string[] | undefined;
    compression?: "none" | "gzip" | "zstd" | undefined;
    encryption?: boolean | undefined;
    antivirus?: boolean | undefined;
}>;
export type Bucket = z.infer<typeof BucketSchema>;
