interface NamedComponent {
defaultProps?: Partial
displayName?: string
}
export interface OverridableComponent
extends NamedComponent
{
>>(
props: PropsWithOverridableAs
): JSX.Element | null
}
type BaseEnvironments = 'development' | 'staging' | 'production'
type Environments = BaseEnvironments | 'temploy' | 'test'
/** T parameter is needed to extend BaseEnvironments with 'temploy' or 'test' */
export type EnvironmentType =
| T
| BaseEnvironments
export type ButtonOrAnchorProps = AnchorHTMLAttributes &
ButtonHTMLAttributes
export type ColorType =
| 'green'
| 'red'
| 'yellow'
| 'light-grey'
| 'grey'
| 'grey-main-2'
| 'dark-grey'
| 'black'
| 'light-blue'
| 'inherit'
export interface TransitionProps {
/* Callback fired when the component has exited */
onExited?: (node: HTMLElement) => void
/* The duration for the transition, in milliseconds */
timeout?: number | { enter?: number; exit?: number; appear?: number }
}