import { AccountBase, ClassBase, ID, NestedAccountHierarchyForReport, NestedClassHierarchyForReport, TransactionVendorDetails, User } from '@zeniai/client-epic-state';
import { DisableMode } from '../../../formElements/common/common';
import { FormSectionProps } from '../../../formElements/common/formSection';
import { GroupedSingleSelectFieldValue } from '../../../formElements/groupedSingleSelectField/GroupedSingleSelectField';
import { UserSingleSelectFieldValue } from '../../../formElements/labeledUserSingleSelectField/UserSingleSelectField';
declare const subFieldUniqueName: (sectionId: string, key: FormDataKeys) => `${string}.vendorName` | `${string}.vendorCategory` | `${string}.vendorClass` | `${string}.vendorOwner`;
export type FormDataKeyUniqueNames = ReturnType<typeof subFieldUniqueName>;
export interface VendorDetailsFormData {
    vendorCategory: GroupedSingleSelectFieldValue;
    vendorClass: GroupedSingleSelectFieldValue;
    vendorName: string;
    vendorOwner: UserSingleSelectFieldValue;
}
export type VendorDetailPageType = "createEditVendorPage" | "vendorDetailPage" | "transactionVendorDetailPage";
export type FormDataKeys = keyof VendorDetailsFormData;
export interface VendorDetailsSectionProps extends FormSectionProps {
    accountsHierarchyList: NestedAccountHierarchyForReport[];
    allAccounts: AccountBase[];
    allClasses: ClassBase[];
    allOwners: User[];
    classHierarchyList: NestedClassHierarchyForReport[];
    isSaveError: boolean;
    selectedVendorDetails: TransactionVendorDetails;
    isDisabled?: DisableMode;
    selectedAccountId?: ID;
    selectedClassId?: ID;
    selectedOwnerId?: ID;
    selectedVendorName?: string;
    style?: React.CSSProperties;
}
export declare const VendorDetailsSection: ({ selectedAccountId, isSaveError, selectedClassId, selectedOwnerId, selectedVendorName, allAccounts, allClasses, allOwners, sectionId, isDisabled, accountsHierarchyList, classHierarchyList, }: VendorDetailsSectionProps) => import("react/jsx-runtime").JSX.Element;
export {};
