import { CSSInterpolation } from '@emotion/serialize'; import { EmotionCache, Options } from '@emotion/cache'; import { StyleSheet } from '@emotion/sheet'; export type { CSSInterpolation, ArrayCSSInterpolation, ComponentSelector, CSSObject } from '@emotion/serialize'; export type { EmotionCache, Options }; export interface ArrayClassNamesArg extends Array { } export type ClassNamesArg = undefined | null | string | boolean | { [className: string]: boolean | null | undefined; } | ArrayClassNamesArg; export interface CSSStyleSheet extends StyleSheet { speedy(value: boolean): void; } export interface Emotion { css(template: TemplateStringsArray, ...args: Array): string; css(...args: Array): string; cx(...classNames: Array): string; flush(): void; hydrate(ids: Array): void; injectGlobal(template: TemplateStringsArray, ...args: Array): void; injectGlobal(...args: Array): void; keyframes(template: TemplateStringsArray, ...args: Array): string; keyframes(...args: Array): string; sheet: CSSStyleSheet; cache: EmotionCache; merge(className: string): string; getRegisteredStyles(registeredStyles: Array, className: string): string; } declare let createEmotion: (options: Options) => Emotion; export default createEmotion;