import { AfterViewInit, ElementRef, OnInit, TemplateRef } from '@angular/core'; import { MatMenuTrigger } from '@angular/material/menu'; import { TsButtonFormatTypes } from '@terminus/ui/button'; import { TsStyleThemeTypes } from '@terminus/ui/utilities'; /** * Define the allowed X positions for a menu */ export declare type TsMenuPositionTypesX = 'before' | 'after'; /** * Define the allowed Y positions for a menu */ export declare type TsMenuPositionTypesY = 'above' | 'below'; /** * Define the allowed trigger types for a menu */ export declare type TsMenuTriggerTypes = 'default' | 'utility'; /** * A presentational component to render a dropdown menu. * * @example * Select Item * * https://getterminus.github.io/ui-demos-release/components/menu */ export declare class TsMenuComponent implements AfterViewInit, OnInit { /** * Define the default icon for the trigger button */ private TRIGGER_ICON_DEFAULT; /** * Define the utility icon for the trigger button */ private TRIGGER_ICON_UTILITY; /** * Return if the current menu is a utility menu */ get isUtilityMenu(): boolean; /** * Define if the menu should overlap the trigger */ shouldOverlapTrigger: boolean; /** * The icon to be used in the trigger button */ triggerIcon: 'arrow_drop_down' | 'more_vert'; /** * Provide access to the trigger */ trigger: MatMenuTrigger; /** * Define if the menu should be opened by default */ defaultOpened: boolean; /** * Define the button format */ format: TsButtonFormatTypes; /** * Define if the menu should be disabled */ isDisabled: boolean; /** * Allow a custom template for menu items */ menuItemsTemplate: TemplateRef; /** * Define the X menu position */ menuPositionX: TsMenuPositionTypesX; /** * Define the Y menu position */ menuPositionY: TsMenuPositionTypesY; /** * Define the menu theme */ theme: TsStyleThemeTypes; /** * Define the type of trigger {@link TsMenuTriggerTypes} * * - 'utility' will expose a simple fab trigger: `⋮` * - 'default' will expose a standard {@link TsButtonComponent} */ triggerType: TsMenuTriggerTypes; /** * Set the triggerIcon based on the triggerType */ ngOnInit(): void; /** * After the view has initialized, open the menu if it is defaulted to 'open' */ ngAfterViewInit(): void; }