@launchmenu/core
Version:
An environment for visual keyboard controlled applets
29 lines • 1.4 kB
TypeScript
import { IFolderMenuItemData } from "./_types/IFolderMenuItemData";
import { IMenuItem } from "./_types/IMenuItem";
import { ISubscribable } from "../../utils/subscribables/_types/ISubscribable";
import { IRecursiveSearchChildren } from "../../actions/types/search/tracedRecursiveSearch/_types/IRecursiveSearchChildren";
/**
* Retrieves the children in (subscribable) list form
* @param children The children to get
* @returns The children list
*/
export declare function getChildList<S extends {
[key: string]: IMenuItem;
} | ((...args: any[]) => IMenuItem[]) | IMenuItem[]>(children: S): Exclude<S, {
[key: string]: IMenuItem;
}>;
/**
* Creates a new folder menu item, used to store multiple child menu items in
* @param data The data to create the menu item from
* @returns The folder menu item, including the children
*/
export declare function createFolderMenuItem<T extends {
[key: string]: IMenuItem;
} | ISubscribable<IMenuItem[]>, S extends {
[key: string]: IMenuItem;
} | IRecursiveSearchChildren = T extends {
[key: string]: IMenuItem;
} ? T : IRecursiveSearchChildren>({ actionBindings, children, closeOnExecute, forwardKeyEvents, searchChildren, name, pathName, searchIcon, layerContentData, layerFieldData, ...rest }: IFolderMenuItemData<T, S>): IMenuItem & {
children: T;
};
//# sourceMappingURL=createFolderMenuItem.d.ts.map