import * as React from 'react'; import { FormControl, IContainer } from '.'; import { ColProps } from 'antd/lib/grid/col'; import { Gutter } from 'antd/lib/grid/row'; interface IProps extends IContainer { name: string; value?: Array<{ [key: string]: any; }> | { [key: string]: any; }; oldValue?: Array<{ [key: string]: any; }> | { [key: string]: any; }; comparing?: boolean; labelColProps?: ColProps; wrapperColProps?: ColProps | undefined; rowGutter?: Gutter | [Gutter, Gutter]; disabled?: boolean; compareIdentifiers: string | string[]; compareWithIndex: boolean; excluded?: boolean; minItem: number; allowReposition: boolean; addControlOptions: { position?: 'top' | 'bottom'; customControl?: React.ReactNode; customControlTargetClass?: string; }; deleteControlOptions: { position?: 'top' | 'right' | 'bottom' | 'left'; customControl?: React.ReactNode; customControlTargetClass?: string; }; onlyDeleteLastItem?: boolean; hideDeleteForIndexes?: number[]; reversed?: boolean; onValueChanged: (values: Array<{ [key: string]: any; }>, name: string) => void; layout?: 'horizontal' | 'vertical' | 'inline'; size?: 'small' | 'medium' | 'large'; variant?: 'bottom-border' | 'full-border'; cloneIndex: number; _parentPath: string; _internalSetValue?: boolean; _internalSetOldValue?: boolean; _onFormItemMount: (ref: FormControl) => void; _onFormItemUnmount: (ref: FormControl) => void; _onCloneMount: (ref: Clone) => void; _onCloneUnmount: (ref: Clone) => void; _onValueChanged: (value: string | { [key: string]: any; }) => void; } interface IState { value: Array<{ [key: string]: any; }>; } export declare class Clone extends React.Component { private mouseHoldTimeout; static defaultProps: { name: string; value: undefined; oldValue: undefined; compareIdentifiers: undefined; excluded: undefined; minItem: number; addControlOptions: { position: string; }; deleteControlOptions: { position: string; }; onlyDeleteLastItem: boolean; allowReposition: boolean; compareWithIndex: boolean; reversed: boolean; hideDeleteForIndexes: never[]; onValueChanged: () => undefined; comparing: undefined; labelColProps: undefined; wrapperColProps: undefined; rowGutter: undefined; disabled: undefined; layout: undefined; size: undefined; variant: undefined; cloneIndex: number; _parentPath: string; _onFormItemMount: () => undefined; _onFormItemUnmount: () => undefined; _onCloneMount: () => undefined; _onCloneUnmount: () => undefined; _onValueChanged: () => undefined; }; constructor(props: any); componentDidMount(): void; componentWillUnmount(): void; componentDidUpdate(prevProps: IProps): void; render(): React.JSX.Element; getFullPathName(): string; getName(): string; isExcluded(): boolean | undefined; SetValue(value: any): void; private renderNormal; private renderInCompareMode; private renderComponent; private recursiveCloneChildren; protected onChildValueChanged(index: number, newValue: string | { [key: string]: any; }, name: string): void; private onValueChanged; private maintainMinItems; private getOldItem; private extractUnmatchedOldNewItems; private getAddControl; private getDeleteControl; private onDelete; private addItem; private ensureUUidExists; private processedValueToArray; private getCompareIdentifiersInArray; private onMouseDown; private onMouseReleaseOrLeave; private isNormalInteger; } export {};