/*!--------------------------------------------------------- * Copyright (C) Microsoft Corporation. All rights reserved. *----------------------------------------------------------*/ import IToolbarDisplayable from "./IToolbarDisplayable"; interface IToolbarDropDown extends IToolbarDisplayable { type: "dropdown"; subgroup: IActionConfigItem[]; expanded: ko.Observable; open: () => void; } export interface IDropdown { type: "dropdown"; title: string; displayName: string; id: string; enabled: ko.Observable; visible?: ko.Observable; icon?: string; subgroup?: IActionConfigItem[]; } export interface ISeperator { type: "separator"; visible?: ko.Observable; } export interface IToggle { type: "toggle"; title: string; displayName: string; checkedTitle: string; checkedDisplayName: string; id: string; checked: ko.Observable; enabled: ko.Observable; visible?: ko.Observable; icon?: string; } export interface IAction { type: "action"; title: string; displayName: string; id: string; action: () => any; enabled: ko.Subscribable; visible?: ko.Observable; icon?: string; } export type IActionConfigItem = ISeperator | IAction | IToggle | IDropdown; export default IToolbarDropDown;