UNPKG

1.94 kBTypeScriptView Raw
1import React from 'react';
2export declare type Omit<T, U> = Pick<T, Exclude<keyof T, keyof U>>;
3export declare type ReplaceProps<Inner extends React.ElementType, P> = Omit<React.ComponentPropsWithRef<Inner>, P> & P;
4export interface BsPrefixAndClassNameOnlyProps {
5 bsPrefix?: string;
6 className?: string;
7}
8export interface BsCustomPrefixProps {
9 bsCustomPrefix?: string;
10}
11export interface BsPrefixProps<As extends React.ElementType = React.ElementType> extends BsPrefixAndClassNameOnlyProps {
12 as?: As;
13}
14export declare type BsPrefixPropsWithChildren<As extends React.ElementType = React.ElementType> = React.PropsWithChildren<BsPrefixProps<As>>;
15export interface BsPrefixRefForwardingComponent<TInitial extends React.ElementType, P = unknown> {
16 <As extends React.ElementType = TInitial>(props: React.PropsWithChildren<ReplaceProps<As, BsPrefixProps<As> & P>>, context?: any): React.ReactElement | null;
17 propTypes?: any;
18 contextTypes?: any;
19 defaultProps?: Partial<P>;
20 displayName?: string;
21}
22export declare class BsPrefixComponent<As extends React.ElementType, P = unknown> extends React.Component<ReplaceProps<As, BsPrefixProps<As> & P>> {
23}
24export declare type BsPrefixComponentClass<As extends React.ElementType, P = unknown> = React.ComponentClass<ReplaceProps<As, BsPrefixProps<As> & P>>;
25export declare type SelectCallback = (eventKey: string | null, e: React.SyntheticEvent<unknown>) => void;
26export interface TransitionCallbacks {
27 onEnter?(node: HTMLElement): any;
28 onEntered?(node: HTMLElement): any;
29 onEntering?(node: HTMLElement): any;
30 onExit?(node: HTMLElement): any;
31 onExited?(node: HTMLElement): any;
32 onExiting?(node: HTMLElement): any;
33}
34export declare type TransitionComponent = React.ComponentType<{
35 in?: boolean;
36 appear?: boolean;
37 children: React.ReactElement;
38} & TransitionCallbacks>;
39export declare type TransitionType = boolean | TransitionComponent;