ag-charts-community
Version:
Advanced Charting / Charts supporting Javascript / Typescript / React / Angular / Vue
37 lines (36 loc) • 1.38 kB
TypeScript
import type { ModuleInstance } from '../../module/baseModule';
import { BaseModuleInstance } from '../../module/module';
import type { ModuleContext } from '../../module/moduleContext';
import type { Vec2 } from '../../util/vector';
export interface PopoverConstructorOptions {
detached?: boolean;
}
export interface PopoverOptions {
ariaLabel?: string;
class?: string;
initialFocus?: HTMLElement;
sourceEvent?: Event;
onHide?: () => void;
}
/**
* A non-modal element that overlays the chart.
*/
export declare abstract class Popover<Options extends PopoverOptions = PopoverOptions> extends BaseModuleInstance implements ModuleInstance {
protected readonly ctx: ModuleContext;
protected readonly hideFns: Array<() => void>;
private readonly moduleId;
private readonly element;
private lastFocus?;
private initialFocus?;
constructor(ctx: ModuleContext, id: string, options?: PopoverConstructorOptions);
attachTo(popover: Popover): void;
hide(opts?: {
lastFocus?: null;
}): void;
protected removeChildren(): void;
protected showWithChildren(children: Array<HTMLElement>, options: Options): HTMLDivElement & HTMLElement & {
id: import("ag-charts-core").ElementID;
};
protected getPopoverElement(): HTMLDivElement | undefined;
protected updatePosition(position: Partial<Vec2>): void;
}