import type { ComponentChild } from 'preact';
import type { BaseInnerFormProps } from '../../core/hooks/useForm/types';
import type { CompanyTypesValue } from '../../core/models/api/company-types-value';
import type { DocumentType } from '../../core/models/api/document';
import type { CountryCode } from '../../core/models/country-code';
import type { FileSchema } from '../../core/models/file';
import type { TranslationKey } from '../../language/types';
export type DocumentUploadSchema = Record<string, FileSchema[] | undefined>;
export interface DocumentUploadProps extends BaseInnerFormProps<DocumentUploadSchema> {
    documentField?: string;
    documentType?: DocumentType;
    guidanceContent?: ComponentChild;
    guidanceHeader?: ComponentChild;
    documentTypeSelect?: {
        selectedType: string;
        setSelectedType: (value: string) => void;
        options: ReadonlyArray<{
            id: string;
            name: TranslationKey;
        }>;
    };
    requiredFields?: (keyof DocumentUploadSchema)[];
    companyType?: CompanyTypesValue;
    country?: CountryCode;
}
