/** @packageDocumentation
 * @module Backstage
 */
import { StringGetter } from "@itwin/appui-abstract";
import { IconProps, IconSpec } from "@itwin/core-react";
/** Base properties for a [[Backstage]] item.
 * @public
 * @deprecated in 3.0. Use [BackstageItem]($appui-abstract) instead
 */
export interface BackstageItemProps extends IconProps {
    /** if set, component will be enabled - defaults to true */
    isEnabled?: boolean;
    /** if set, component will be shown with as the active item - defaults to false */
    isActive?: boolean;
    /** optional function to set state of backstage item */
    stateFunc?: (state: Readonly<BackstageItemState>) => BackstageItemState;
    /** optional SyncUi event ids that will trigger the state function to run. */
    stateSyncIds?: string[];
    /** if set, it is used to explicitly set the label shown by a component. */
    label?: string | StringGetter;
    /** if set, it is used to define a key that is used to look up a localized string. This value is used only if label is not explicitly set. */
    labelKey?: string;
    /** if set, it is used to explicitly set the description shown by a component. */
    description?: string | StringGetter;
    /** if set, it is used to define a key that is used to look up a localized string. This value is used only if description is not explicitly set. */
    descriptionKey?: string;
    /** used to explicitly set the tooltip shown by a component. */
    tooltip?: string | StringGetter;
    /** if set, it is used to define a key that is used to look up a localized string. This value is used only if label is not explicitly set. */
    tooltipKey?: string;
}
/** Properties that define the state of a Backstage items.
 * @public
 * @deprecated in 3.0. Use [BackstageItem]($appui-abstract) instead
 */
export interface BackstageItemState {
    isEnabled: boolean;
    label: string;
    subtitle: string;
    tooltip: string;
    iconSpec: IconSpec;
    isActive?: boolean;
}
/** Helper method to set backstage item state from props.
 * @public
 * @deprecated in 3.0. Use [BackstageItem]($appui-abstract) instead
 */
export declare const getBackstageItemStateFromProps: (props: BackstageItemProps) => BackstageItemState;
//# sourceMappingURL=BackstageItemProps.d.ts.map