@flexis/ui
Version:
Styleless React Components
28 lines • 1.1 kB
TypeScript
import { ButtonHTMLAttributes, Ref, ReactElement, ReactNode, PureComponent } from 'react';
import PropTypes from 'prop-types';
import { CombinePropsAndAttributes } from '../../helpers';
import { AlignSide, AlignSideVariant } from '../common/types';
interface ISelfProps {
elementRef?: Ref<HTMLButtonElement>;
icon?: ReactElement<any>;
flexIcon?: boolean;
alignIcon?: AlignSide;
children?: ReactNode;
}
export declare type IProps = CombinePropsAndAttributes<ISelfProps, ButtonHTMLAttributes<HTMLButtonElement>>;
export default class Button extends PureComponent<IProps> {
static propTypes: {
elementRef: PropTypes.Requireable<(...args: any[]) => any>;
icon: PropTypes.Requireable<PropTypes.ReactElementLike>;
flexIcon: PropTypes.Requireable<boolean>;
alignIcon: PropTypes.Requireable<AlignSide>;
children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
};
static defaultProps: {
flexIcon: boolean;
alignIcon: AlignSideVariant;
};
render(): JSX.Element;
}
export {};
//# sourceMappingURL=Button.d.ts.map