UNPKG

jamis

Version:

一种支持通过JSON配置方式生成页面的组件库

33 lines (32 loc) 1.48 kB
import React from 'react'; import type { ActionObject, IScopedContext } from 'jamis-core'; import { ScopedContext } from 'jamis-core'; import type { DropDownButtonProps, DropDownButtonRendererProps, DropdownItem } from './types'; interface DropDownButtonState { isOpened: boolean; } export default class DropDownButton<T extends DropDownButtonProps> extends React.Component<T, DropDownButtonState> { static defaultProps: Partial<DropDownButtonProps>; target: any; timer: ReturnType<typeof setTimeout>; openTimer: ReturnType<typeof setTimeout>; constructor(props: T); componentDidMount(): void; componentDidUpdate(prevProps: Readonly<DropDownButtonProps>): void; domRef: (ref: any) => void; toogle: (e: React.MouseEvent<any>) => void; open: () => Promise<void>; close: () => void; keepOpen: (ev: React.UIEvent) => void; doAction(action: ActionObject, args?: Record<string, any>): void; renderButton(menuItem: DropdownItem, index: number | string, depth?: number): React.ReactNode; renderOuter(): JSX.Element | null; render(): JSX.Element; } export declare class DropDownButtonRenderer extends DropDownButton<DropDownButtonRendererProps> { static contextType: React.Context<IScopedContext<import("jamis-core").ScopedComponentType>>; context: React.ContextType<typeof ScopedContext>; constructor(props: DropDownButtonRendererProps, context: IScopedContext); componentWillUnmount(): void; } export {};