react-application-core
Version:
A react-based application core for the business applications.
41 lines (40 loc) • 1.89 kB
TypeScript
import { IUniversalLayoutBuilderConfigEntity, IUniversalLayoutProps, IUniversalLayoutViewBuilder, UniversalLayoutBuilderChildrenT } from '../../../definition';
export declare abstract class UniversalLayoutViewBuilder<TNode, TProps extends IUniversalLayoutProps = IUniversalLayoutProps> implements IUniversalLayoutViewBuilder<TNode, TProps> {
/**
* @stable [23.01.2020]
* @param {TProps} props
* @param {Array<UniversalLayoutBuilderChildrenT<TNode>>} children
* @param {IUniversalLayoutBuilderConfigEntity<TNode>} layoutConfig
* @returns {TNode}
*/
abstract buildRowView(props: TProps, children: Array<UniversalLayoutBuilderChildrenT<TNode>>, layoutConfig: IUniversalLayoutBuilderConfigEntity<TNode>): TNode;
/**
* @stable [23.01.2020]
* @param {TProps} props
* @param {Array<UniversalLayoutBuilderChildrenT<TNode>>} children
* @param {IUniversalLayoutBuilderConfigEntity<TNode>} layoutConfig
* @returns {TNode}
*/
abstract buildColumnView(props: TProps, children: Array<UniversalLayoutBuilderChildrenT<TNode>>, layoutConfig: IUniversalLayoutBuilderConfigEntity<TNode>): TNode;
/**
* @stable [23.01.2020]
* @param {UniversalLayoutBuilderChildrenT<TNode>} item
* @returns {boolean}
*/
isClonedItem(item: UniversalLayoutBuilderChildrenT<TNode>): boolean;
/**
* @stable [23.01.2020]
* @param {TNode} item
* @param {IUniversalLayoutBuilderConfigEntity<TNode>} layoutConfig
* @param {TProps} props
* @returns {TProps}
*/
getClonedItemProps(item: TNode, layoutConfig: IUniversalLayoutBuilderConfigEntity<TNode>, props: TProps): TProps;
/**
* @stable [23.01.2020]
* @param {TNode} item
* @param {TProps} props
* @returns {TNode}
*/
cloneItem(item: TNode, props: TProps): TNode;
}