48 lines
1.1 KiB
TypeScript
48 lines
1.1 KiB
TypeScript
import * as React from 'react';
|
|
import { StandardProps } from '..';
|
|
import { ButtonBaseProps } from '../ButtonBase';
|
|
import { ButtonBaseClassKey } from '../ButtonBase/ButtonBase';
|
|
|
|
export interface TabProps extends StandardProps<
|
|
ButtonBaseProps,
|
|
TabClassKey,
|
|
'onChange'
|
|
> {
|
|
disabled?: boolean;
|
|
fullWidth?: boolean;
|
|
icon?: string | React.ReactElement<any>;
|
|
value?: any;
|
|
label?: React.ReactNode;
|
|
onChange?: (
|
|
event: React.ChangeEvent<{ checked: boolean }>,
|
|
value: any
|
|
) => void;
|
|
onClick?: React.EventHandler<any>;
|
|
selected?: boolean;
|
|
style?: object;
|
|
textColor?: string | 'accent' | 'primary' | 'inherit';
|
|
}
|
|
|
|
export type TabClassKey =
|
|
| ButtonBaseClassKey
|
|
| 'rootLabelIcon'
|
|
| 'rootAccent'
|
|
| 'rootAccentSelected'
|
|
| 'rootAccentDisabled'
|
|
| 'rootPrimary'
|
|
| 'rootPrimarySelected'
|
|
| 'rootPrimaryDisabled'
|
|
| 'rootInherit'
|
|
| 'rootInheritSelected'
|
|
| 'rootInheritDisabled'
|
|
| 'fullWidth'
|
|
| 'wrapper'
|
|
| 'labelContainer'
|
|
| 'label'
|
|
| 'labelWrapped'
|
|
;
|
|
|
|
declare const Tab: React.ComponentType<TabProps>;
|
|
|
|
export default Tab;
|