material-form-builder
Version:
FormBuilder For React.js
44 lines (43 loc) • 1.44 kB
TypeScript
import { Component } from 'react';
import { OutputValues } from './types/builder.outputValues';
import { InputProps } from './types/input';
import { ObjectLiteral } from './types/helper.types';
interface FormBuilderImplements {
getValues: (validation: boolean) => OutputValues;
setValues: (values: ObjectLiteral) => Promise<void>;
clear: () => Promise<void>;
}
interface IProps {
inputs: InputProps[];
onChange?: Function;
onMount?: Function;
}
interface IState {
isMounted: boolean;
time: number | null;
inInternalSettingProcess: boolean;
}
export declare class FormBuilder extends Component<IProps, IState> implements FormBuilderImplements {
state: IState;
private inputRefs;
private inputs;
private defaultValues;
private didMountEvent;
componentDidMount(): void;
componentWillUnmount(): void;
componentDidUpdate(prevProps: Readonly<IProps>, prevState: Readonly<IState>, snapshot?: any): void;
getValues: (validation?: boolean) => OutputValues;
private setObjectValues;
private setNormalValue;
private setValue;
setValues: (value: ObjectLiteral) => Promise<any>;
private syncSetValues;
clear: () => Promise<any>;
private lastVisibilityOfInputs;
private checkVisibility;
private onUpdateInputs;
private executeAction;
private renderInput;
render(): JSX.Element;
}
export {};