jqwidgets-framework
Version:
jQWidgets is an advanced Angular, Vue, Blazor, React, Web Components, jquery, ASP .NET MVC, Custom Elements and HTML5 UI framework.
66 lines (65 loc) • 2.08 kB
TypeScript
import * as React from 'react';
declare class JqxLayout extends React.PureComponent<ILayoutProps, IState> {
protected static getDerivedStateFromProps(props: ILayoutProps, state: IState): null | IState;
private _jqx;
private _id;
private _componentSelector;
constructor(props: ILayoutProps);
componentDidMount(): void;
componentDidUpdate(): void;
render(): React.ReactNode;
setOptions(options: ILayoutProps): void;
getOptions(option: string): any;
destroy(): void;
loadLayout(Layout: any): void;
refresh(): void;
renderWidget(): void;
saveLayout(): any;
private _manageProps;
private _wireEvents;
}
export default JqxLayout;
export declare const jqx: any;
export declare const JQXLite: any;
interface IState {
lastProps: object;
}
export interface ILayout {
type?: 'layoutGroup' | 'tabbedGroup' | 'documentGroup' | 'autoHideGroup' | 'layoutPanel' | 'documentPanel';
alignment?: 'left' | 'right' | 'top' | 'bottom';
allowClose?: boolean;
allowPin?: boolean;
allowUnpin?: boolean;
contentContainer?: string;
height?: number | string;
initContent?: () => void;
minHeight?: number | string;
minWidth?: number | string;
orientation?: 'horizontal' | 'vertical';
pinnedHeight?: number | string;
pinnedWidth?: number | string;
selected?: boolean;
title?: number | string;
unpinnedHeight?: number | string;
unpinnedWidth?: number | string;
width?: number | string;
items?: ILayout[];
}
interface ILayoutOptions {
contextMenu?: boolean;
height?: string | number;
layout?: ILayout[];
minGroupHeight?: number | string;
minGroupWidth?: number | string;
resizable?: boolean;
rtl?: boolean;
theme?: string;
width?: string | number;
}
export interface ILayoutProps extends ILayoutOptions {
className?: string;
style?: React.CSSProperties;
onPin?: (e?: Event) => void;
onResize?: (e?: Event) => void;
onUnpin?: (e?: Event) => void;
}