import { Entity, EntityAutoCompleteView, ID, RecommendationWithCOT, SupportedTransactionWithCOT } from '@zeniai/client-epic-state';
import { COTTrackingProps } from '../../../types/cotTracking';
import { GroupedSingleSelectFieldValue } from '../../formElements/groupedSingleSelectField/GroupedSingleSelectField';
import { VendorSearchAutoComplete } from './transactionLineTypes';
export interface VendorDetailsFormData {
    vendorDetails: GroupedSingleSelectFieldValue;
}
export type FormDataKeys = keyof VendorDetailsFormData;
export declare const uniqueName: (sectionId: string) => string;
export type FormDataKeyUniqueNames = ReturnType<typeof uniqueName>;
export interface Props {
    isCOTEnabled: boolean;
    sectionId: string;
    transaction: SupportedTransactionWithCOT;
    vendorSearchAutoComplete: VendorSearchAutoComplete;
    cotTracking?: COTTrackingProps;
    existingCustomer?: {
        id: ID;
        name: string;
        qboId: ID;
    };
    existingVendor?: {
        id: ID;
        name: string;
        qboId: ID;
    };
    isQuickViewMode?: boolean;
    /**
     * Portal target for the vendor autocomplete's menu. Threaded down from
     * `TransactionDetailPage` (`dropdownPortal ?? containerRef.current`) so
     * the menu renders outside the page's stacking context and is not
     * covered by the table's sticky header (z-index 3) or clipped by the
     * side panel's `overflow: hidden`. Falls back to `document.body` when
     * no target is provided.
     */
    menuPortalTarget?: HTMLElement | null;
    openTooltipId?: ID;
    recommendationsWithCOT?: RecommendationWithCOT[];
    selectedEntity?: Entity;
    setOpenTooltipId: (tooltipId: ID | undefined) => void;
    handleCustomerRename?: (newName: string) => void;
    handleVendorRename?: (newName: string) => void;
    onTransactionTypeChangeToTransfer?: (transactionType: string) => void;
}
export default function TransactionDetailTitle({ transaction, sectionId, existingVendor, existingCustomer, selectedEntity, isCOTEnabled, isQuickViewMode, vendorSearchAutoComplete, recommendationsWithCOT, cotTracking, handleVendorRename, handleCustomerRename, openTooltipId, setOpenTooltipId, onTransactionTypeChangeToTransfer, menuPortalTarget, }: Readonly<Props>): import("react/jsx-runtime").JSX.Element;
export declare function getTitle(transaction: SupportedTransactionWithCOT, selectedVendorName?: string): string;
export declare const getAllVendorOptions: (allVendors?: Entity[]) => {
    label: string;
    value: string;
}[];
export declare const getDefaultVendorOptions: (selectedVendorId?: ID, selectedVendorName?: string, vendorSearchEntityAutoCompleteView?: EntityAutoCompleteView) => {
    label: string | undefined;
    value: string;
}[];
