@flexis/ui
Version:
Styleless React Components
40 lines • 1.6 kB
TypeScript
import { HTMLAttributes, ReactNode, ChangeEvent, PureComponent } from 'react';
import PropTypes from 'prop-types';
import { CombinePropsAndAttributes } from '../../helpers';
import { SelectValue } from '../common/types';
export * from './CustomFlatSelectOption';
interface ISelfProps {
id?: string;
name?: string;
defaultValue?: SelectValue;
value?: SelectValue;
multiple?: boolean;
disabled?: boolean;
children: ReactNode;
onChange?(value: SelectValue, event: ChangeEvent): any;
}
export declare type IProps = CombinePropsAndAttributes<ISelfProps, HTMLAttributes<HTMLUListElement>>;
interface IState {
value: SelectValue;
}
export default class CustomFlatSelect extends PureComponent<IProps, IState> {
static propTypes: {
id: PropTypes.Requireable<string>;
name: PropTypes.Requireable<string>;
onChange: PropTypes.Requireable<(...args: any[]) => any>;
defaultValue: PropTypes.Requireable<string | number | boolean | (string | number | boolean)[]>;
value: PropTypes.Requireable<string | number | boolean | (string | number | boolean)[]>;
multiple: PropTypes.Requireable<boolean>;
disabled: PropTypes.Requireable<boolean>;
children: PropTypes.Validator<PropTypes.ReactNodeLike>;
};
static defaultProps: {
multiple: boolean;
disabled: boolean;
};
static getDerivedStateFromProps({ value }: IProps, { value: prevValue }: IState): IState;
constructor(props: any);
render(): JSX.Element;
private onChange;
}
//# sourceMappingURL=CustomFlatSelect.d.ts.map