Blame view

天文台pc/tianwentai-ui/node_modules/@mui/material/esm/utils/PolymorphicComponent.d.ts 944 Bytes
bc518174   王天杨   提交两个项目文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
  import * as React from 'react';
  import { DistributiveOmit, OverridableTypeMap } from '@mui/types';
  /**
   * A component whose root component can be controlled explicitly with a generic type parameter.
   * Adjusts valid props based on the type of `RootComponent`.
   *
   * @template TypeMap The interface the defines the props and a default root element of the component.
   */
  export type PolymorphicComponent<TypeMap extends OverridableTypeMap> = {
    <RootComponent extends React.ElementType = TypeMap['defaultComponent']>(props: PolymorphicProps<TypeMap, RootComponent>): React.JSX.Element | null;
    propTypes?: any;
    displayName?: string | undefined;
  };
  /**
   * Own props of the component augmented with props of the root component.
   */
  export type PolymorphicProps<TypeMap extends OverridableTypeMap, RootComponent extends React.ElementType> = TypeMap['props'] & DistributiveOmit<React.ComponentPropsWithRef<RootComponent>, keyof TypeMap['props']>;