import { type GenericValidator, type Infer } from "convex/values"; import { S3Client } from "@aws-sdk/client-s3"; export declare const r2ConfigValidator: import("convex/values").VObject<{ bucket: string; endpoint: string; accessKeyId: string; secretAccessKey: string; }, { bucket: import("convex/values").VString; endpoint: import("convex/values").VString; accessKeyId: import("convex/values").VString; secretAccessKey: import("convex/values").VString; }, "required", "bucket" | "endpoint" | "accessKeyId" | "secretAccessKey">; export declare const createR2Client: (args: Infer) => S3Client; export declare const paginationReturnValidator: (docValidator: GenericValidator) => import("convex/values").VObject<{ splitCursor?: string | null | undefined; pageStatus?: "SplitRecommended" | "SplitRequired" | null | undefined; page: any[]; isDone: boolean; continueCursor: string; }, { page: import("convex/values").VArray; isDone: import("convex/values").VBoolean; continueCursor: import("convex/values").VString; splitCursor: import("convex/values").VUnion, import("convex/values").VString], "optional", never>; pageStatus: import("convex/values").VUnion<"SplitRecommended" | "SplitRequired" | null | undefined, [import("convex/values").VNull, import("convex/values").VLiteral<"SplitRecommended", "required">, import("convex/values").VLiteral<"SplitRequired", "required">], "optional", never>; }, "required", "page" | "isDone" | "continueCursor" | "splitCursor" | "pageStatus">; //# sourceMappingURL=shared.d.ts.map