import { Step } from '@ephox/agar';
import { AlloyComponent } from 'ephox/alloy/api/component/ComponentApi';
import { TestStore } from 'ephox/alloy/api/testhelpers/TestStore';
import { ItemSpec } from 'ephox/alloy/ui/types/ItemTypes';
import { PartialMenuSpec, TieredMenuSpec } from 'ephox/alloy/ui/types/TieredMenuTypes';
interface MenuState {
    readonly menuUid: string;
}
declare const renderMenu: (spec: {
    value: string;
    text?: string;
    items: ItemSpec[];
}) => PartialMenuSpec;
declare const renderItem: (spec: {
    type: any;
    widget?: any;
    data: {
        value: string;
        meta: any;
    };
    hasSubmenu?: boolean;
}) => ItemSpec;
declare const part: (store: TestStore) => Partial<TieredMenuSpec>;
declare const mStoreMenuUid: <T>(component: AlloyComponent) => Step<T, T & MenuState>;
declare const mWaitForNewMenu: (component: AlloyComponent) => Step<MenuState, unknown>;
declare const assertLazySinkArgs: (expectedTag: string, expectedClass: string, comp: AlloyComponent) => void;
declare const markers: () => {
    item: string;
    menu: string;
    backgroundMenu: string;
    selectedMenu: string;
    selectedItem: string;
};
export { assertLazySinkArgs, renderItem, renderMenu, part, markers, mWaitForNewMenu, mStoreMenuUid };
//# sourceMappingURL=TestDropdownMenu.d.ts.map