UNPKG

1.05 kBTypeScriptView Raw
1import * as React from 'react';
2import { Orientation } from '../Stepper';
3import { ButtonBaseTypeMap, ExtendButtonBase, ExtendButtonBaseTypeMap } from '../ButtonBase';
4import { OverrideProps } from '../OverridableComponent';
5
6export type StepButtonIcon = React.ReactElement | string | number | null;
7
8export type StepButtonTypeMap<P, D extends React.ElementType> = ExtendButtonBaseTypeMap<{
9 props: P & {
10 active?: boolean;
11 alternativeLabel?: boolean;
12 completed?: boolean;
13 disabled?: boolean;
14 icon?: StepButtonIcon;
15 last?: boolean;
16 optional?: React.ReactNode;
17 orientation?: Orientation;
18 };
19 defaultComponent: D;
20 classKey: StepButtonClasskey;
21}>;
22
23declare const StepButton: ExtendButtonBase<
24 StepButtonTypeMap<{}, ButtonBaseTypeMap['defaultComponent']>
25>;
26
27export type StepButtonClasskey = 'root' | 'vertical' | 'touchRipple';
28
29export type StepButtonProps<
30 D extends React.ElementType = ButtonBaseTypeMap['defaultComponent'],
31 P = {}
32> = OverrideProps<StepButtonTypeMap<P, D>, D>;
33
34export default StepButton;