import { type IUiLabelsChecklistItem } from "../UiLabelsChecklist/UiLabelsChecklist.js";
/**
 * @internal
 */
export interface IUiMoreOptionsMenuProps {
    /** Empty/omitted hides the "Manage labels access" row (e.g. facts have no labels). */
    labels?: ReadonlyArray<IUiLabelsChecklistItem>;
    /** Locked items are always treated as selected. */
    selectedLabelIds?: ReadonlyArray<string>;
    onLabelsChange?: (selectedIds: string[]) => void;
    /** Omit to hide the row (Transfer ownership is gated until wired). */
    onTransferOwnership?: () => void;
    /**
     * Omit to hide the row. Used for read-only permission rows (e.g. EDIT), whose
     * level control has no dropdown to host Remove access — so the action lives here.
     */
    onRemoveAccess?: () => void;
    isDisabled?: boolean;
    dataTestId?: string;
}
/**
 * Per-grantee "⋯" menu: "Manage labels access" (drills into {@link UiLabelsChecklist}),
 * "Transfer ownership" and "Remove access". Each row shows only when its data/handler
 * is given. Remove access appears here for read-only permission rows whose level control
 * has no dropdown to host it.
 *
 * @internal
 */
export declare function UiMoreOptionsMenu({ labels, selectedLabelIds, onLabelsChange, onTransferOwnership, onRemoveAccess, isDisabled, dataTestId }: IUiMoreOptionsMenuProps): import("react/jsx-runtime").JSX.Element;
//# sourceMappingURL=UiMoreOptionsMenu.d.ts.map