/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 */ import { FlyoutItem } from './flyout_item.js'; import type { IFlyout } from './interfaces/i_flyout.js'; import type { IFlyoutInflater } from './interfaces/i_flyout_inflater.js'; /** * @internal */ export declare const SEPARATOR_TYPE = "sep"; /** * Class responsible for creating separators for flyouts. */ export declare class SeparatorFlyoutInflater implements IFlyoutInflater { /** * Inflates a dummy flyout separator. * * The flyout automatically creates separators between every element with a * size determined by calling gapForElement on the relevant inflater. * Additionally, users can explicitly add separators in the flyout definition. * When separators (implicitly or explicitly created) follow one another, the * gap of the last one propagates backwards and flattens to one separator. * This flattening is not additive; if there are initially separators of 2, 3, * and 4 pixels, after normalization there will be one separator of 4 pixels. * Therefore, this method returns a zero-width separator, which will be * replaced by the one implicitly created by the flyout based on the value * returned by gapForElement, which knows the default gap, unlike this method. * * @param _state A JSON representation of a flyout separator. * @param flyout The flyout to create the separator for. * @returns A newly created FlyoutSeparator. */ load(_state: object, flyout: IFlyout): FlyoutItem; /** * Returns the size of the separator. See `load` for more details. * * @param state A JSON representation of a flyout separator. * @param defaultGap The default spacing for flyout items. * @returns The desired size of the separator. */ gapForItem(state: object, defaultGap: number): number; /** * Disposes of the given separator. Intentional no-op. * * @param _item The flyout separator to dispose of. */ disposeItem(_item: FlyoutItem): void; /** * Returns the type of items this inflater is responsible for creating. * * @returns An identifier for the type of items this inflater creates. */ getType(): string; } //# sourceMappingURL=separator_flyout_inflater.d.ts.map