2022-06-05 18:56:42 +00:00
|
|
|
import { ComponentType, ReactElement } from 'react';
|
2020-07-04 16:13:41 +00:00
|
|
|
// eslint-disable-next-line no-restricted-imports
|
2022-06-05 18:56:42 +00:00
|
|
|
import styledImport, { css as cssImport, CSSProp, StyledComponentProps } from 'styled-components';
|
2020-07-04 16:13:41 +00:00
|
|
|
|
|
|
|
declare module 'react' {
|
|
|
|
interface Attributes {
|
|
|
|
css?: CSSProp;
|
|
|
|
}
|
|
|
|
}
|
2022-06-05 18:56:42 +00:00
|
|
|
|
|
|
|
declare module 'styled-components' {
|
|
|
|
interface StyledComponentBase<
|
|
|
|
C extends string | ComponentType<any>,
|
|
|
|
// eslint-disable-next-line @typescript-eslint/ban-types
|
|
|
|
T extends object,
|
|
|
|
// eslint-disable-next-line @typescript-eslint/ban-types
|
|
|
|
O extends object = {},
|
|
|
|
A extends keyof any = never
|
|
|
|
> extends ForwardRefExoticBase<StyledComponentProps<C, T, O, A>> {
|
|
|
|
(props: StyledComponentProps<C, T, O, A> & { as?: Element | string; forwardedAs?: never | undefined }): ReactElement<
|
|
|
|
StyledComponentProps<C, T, O, A>
|
|
|
|
>;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
declare module 'twin.macro' {
|
|
|
|
const css: typeof cssImport;
|
|
|
|
const styled: typeof styledImport;
|
|
|
|
}
|