@try-at-software/input-elements
Version:
A package providing different input elements that are extensible and easily configurable for your custom needs.
37 lines (36 loc) • 1.99 kB
TypeScript
import * as React from 'react';
import { FormText } from '../../Components';
import { IChangingPresentation, IDynamicPresentation, IPresentation, IRestrictedPresentation } from '../../Presentations';
import { IDynamicProps } from '../IDynamicProps';
import { IOperativeProps } from '../IOperativeProps';
import { ISingleValueInputElementProps } from '../ISingleValueInputElementProps';
interface ISingleValueInputElementWrapperState<TValue, TDynamicProps> {
value: TValue;
errorMessage: FormText;
isLoading: boolean;
isVisible: boolean;
dynamicProps: TDynamicProps;
}
export interface ISingleValueInputElementWrapperProps<TValue, TComponentProps, TDynamicProps> {
internalComponent: React.ComponentType<ISingleValueInputElementProps<TValue> & IOperativeProps<TComponentProps> & IDynamicProps<TDynamicProps>>;
inputProps: ISingleValueInputElementProps<TValue>;
operativeProps: TComponentProps;
initialDynamicProps: TDynamicProps;
isInitiallyLoading: boolean;
isInitiallyVisible: boolean;
loadingIndicator: React.ComponentType;
renderErrors: boolean;
}
export declare class SingleValueInputElementWrapper<TValue, TComponentProps, TDynamicProps> extends React.Component<ISingleValueInputElementWrapperProps<TValue, TComponentProps, TDynamicProps>, ISingleValueInputElementWrapperState<TValue, TDynamicProps>> implements IPresentation, IChangingPresentation<TValue>, IRestrictedPresentation, IDynamicPresentation<TDynamicProps> {
constructor(props: ISingleValueInputElementWrapperProps<TValue, ISingleValueInputElementProps<TValue> & TComponentProps, TDynamicProps>);
startLoading: () => void;
stopLoading: () => void;
hide: () => void;
show: () => void;
update: (newValue: TValue) => void;
setError: (errorMessage: FormText) => void;
changeDynamicProps: (dynamicProps: TDynamicProps) => void;
render: () => JSX.Element;
private renderInternalContent;
}
export {};