import { z } from 'zod';
import { SpaceCredentialProvider } from '@plitzi/sdk-shared';
import { MouseEvent } from 'react';
export declare const spaceCredentialFormSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
    provider: z.ZodLiteral<"s3">;
    name: z.ZodString;
    accessKeyId: z.ZodString;
    secretAccessKey: z.ZodString;
}, z.core.$strip>, z.ZodObject<{
    provider: z.ZodLiteral<"r2">;
    name: z.ZodString;
    accessKeyId: z.ZodString;
    secretAccessKey: z.ZodString;
}, z.core.$strip>, z.ZodObject<{
    provider: z.ZodLiteral<"ssr">;
    name: z.ZodString;
    fields: z.ZodDiscriminatedUnion<[z.ZodObject<{
        type: z.ZodLiteral<"basic">;
        user: z.ZodString;
        pass: z.ZodString;
    }, z.core.$strip>, z.ZodObject<{
        type: z.ZodLiteral<"token">;
        token: z.ZodString;
    }, z.core.$strip>], "type">;
}, z.core.$strip>], "provider">;
export type SpaceCredentialFormProps = {
    className?: string;
    name?: string;
    provider?: SpaceCredentialProvider;
    accessKeyId?: string;
    secretAccessKey?: string;
    type?: 'basic' | 'token';
    user?: string;
    pass?: string;
    token?: string;
    onClose?: (e?: MouseEvent) => void;
    onSubmit?: (e: MouseEvent | undefined, values: z.infer<typeof spaceCredentialFormSchema>) => void;
};
declare const SpaceCredentialForm: ({ name, provider, accessKeyId, secretAccessKey, type, user, pass, token, onSubmit, onClose }: SpaceCredentialFormProps) => import("react/jsx-runtime").JSX.Element;
export default SpaceCredentialForm;
