import { default as React } from 'react';
/** Options for cloning a trigger element with ARIA attributes and event handlers. */
interface ICloneTriggerElementOptions {
    /** Fallback id applied when the element has no existing id. Comes from component's id prop. */
    id?: string;
    /** Default id used when neither the element nor the id prop provides one. */
    defaultId: string;
    /** Whether the associated dropdown is currently open (drives aria-expanded). */
    isOpen: boolean;
    /** Whether the trigger is disabled (drives aria-disabled). */
    isDisabled: boolean;
    /** Callback to toggle/open the dropdown. Called after the original onClick (if any). */
    onTriggerClick: () => void;
    /** Callback to close the dropdown. Called when the Escape key is pressed. */
    onEscape: () => void;
}
/**
 * Clones a React trigger element, merging in ARIA attributes and event handlers
 * needed for the date picker / date range picker dropdown pattern.
 *
 * - Preserves any existing id, onClick, and onKeyDown from the original element.
 * - Adds aria-expanded, aria-haspopup, aria-disabled automatically.
 * - Returns `null` when `triggerContent` is not a valid React element.
 *
 * Used by both DatePicker and DateRangePicker to avoid duplicating cloneElement logic.
 */
declare const cloneTriggerElement: (triggerContent: React.ReactNode, options: ICloneTriggerElementOptions) => React.ReactElement | null;
export default cloneTriggerElement;
