@intuitionrobotics/thunderstorm
Version:
30 lines (29 loc) • 904 B
TypeScript
import * as React from "react";
import { CSSProperties, ReactNode } from "react";
import { BaseComponent } from "../../core/BaseComponent";
import { Menu_Model, MenuListener } from "./MenuModule";
import { Adapter } from "../../components/adapter/Adapter";
import { MenuPosition } from "./PopupMenu";
type Props = {
id: string;
iconOpen: ReactNode;
iconClosed: ReactNode;
adapter: Adapter;
resolvePosition?: (button: HTMLImageElement) => MenuPosition;
css?: CSSProperties;
};
export declare class MenuAndButton extends BaseComponent<Props, {
isOpen: boolean;
over: boolean;
}> implements MenuListener {
ref: React.RefObject<HTMLImageElement>;
state: {
isOpen: boolean;
over: boolean;
};
__onMenuHide: (id: string) => void;
__onMenuDisplay: (menu: Menu_Model) => void;
render(): React.JSX.Element;
open: () => void;
}
export {};