///
import { ObservableValue } from '../../Core/Observable';
import { IListBoxItem } from '../../ListBox';
import { IItemProvider } from '../../Utilities/Provider';
import { IDropdownProps } from "./Dropdown.Props";
import { IDropdownCalloutProps } from "./DropdownCallout.Props";
export interface IDropdownPivot extends Pick, "actions" | "filterByText" | "filteredNoResultsText" | "filterPlaceholderText" | "items" | "noItemsText" | "showFilterBox" | "userFilteredItems"> {
/**
* Unique id for this pivot.
*/
id: string;
/**
* The items to show when this pivot is active.
*/
items: IItemProvider> | IListBoxItem[];
/**
* Text to show for this pivot. Defaults to id if not specified.
*/
name?: string;
}
export interface IWithPivotsProps {
/**
* Props to forward to the DropdownCallout.
*/
calloutProps?: IDropdownWithPivotsCalloutProps;
/**
* The children should be a function that takes IWithPivotsChildProps.
*/
children: (props: IWithPivotsChildProps) => JSX.Element;
/**
* A callback to call when a pivot is clicked.
*/
onPivotClicked?: (pivot: IDropdownPivot) => void;
/**
* A list of pivots to show.
*/
pivots: IDropdownPivot[];
/**
* The id of the currently selected pivot.
*/
selectedPivot?: string | ObservableValue;
}
export interface IDropdownWithPivotsCalloutProps extends Pick, "anchorElement" | "anchorOffset" | "anchorOrigin" | "anchorPoint" | "dropdownOrigin" | "ignoreMouseDown" | "excludeFocusZone" | "excludeTabStop" | "focusOnMount" | "lightDismiss" | "listBoxClassName" | "listBoxRef" | "onActivate" | "onDismiss" | "onFilterTextChanged" | "title" | "showCloseButton"> {
/**
* Pass to specify the text of the filter box.
*/
filterText?: ObservableValue;
}
export interface IWithPivotsChildProps extends Pick, "actions" | "filterByText" | "userFilteredItems" | "filteredNoResultsText" | "filterPlaceholderText" | "noItemsText" | "renderCallout" | "showFilterBox"> {
}