import type { ClassicComponentClass, ComponentClass, ComponentProps, ComponentType, ForwardRefExoticComponent, FunctionComponent, ReactElement } from "react"; import type { ColorSchemeName, ImageStyle, TextStyle, ViewStyle } from "react-native"; import type { DotNotation, ResolveDotPath } from "react-native-css/utilities"; /******************************** API ********************************/ export type StyledReactElement> = ReactElement & { [K in keyof M as K extends string ? M[K] extends undefined | false ? never : M[K] extends true | string | object ? K : never : never]?: string; }>; export type StyledProps> = P & { [K in keyof M as K extends string ? M[K] extends undefined | false ? never : M[K] extends true | string | object ? K : never : never]?: string; }; export type Styled = >(component: C, mapping: M & StyledConfiguration, options?: StyledOptions) => StyledComponent; type StyledComponent> = ComponentType & { [K in keyof M as K extends string ? M[K] extends undefined | false ? never : M[K] extends true | string | object ? K : never : never]?: string; }>; export type StyledConfiguration = Record | StyledConfigurationObject | false>>; interface StyledConfigurationObject | false> { target: T; nativeStyleMapping?: T extends false ? NativeStyleMapping> : NativeStyleMapping>, ComponentProps>; /** @deprecated Please use nativeStyleMapping */ nativeStyleToProp?: NativeStyleMapping>, ComponentProps>; } type NativeStyleMapping = T extends object ? { [K in keyof T as K extends string ? K : never]: true | DotNotation; } & { fill?: true | DotNotation; stroke?: true | DotNotation; } : Record>; export interface StyledOptions { passThrough?: boolean; } /*************************** React Helpers ***************************/ export type ReactComponent

= ClassicComponentClass

| ComponentClass

| FunctionComponent

| ForwardRefExoticComponent

; export type ComponentPropsDotNotation = DotNotation>; /******************************** Styles ********************************/ export type InlineStyleRecord = Record & { s?: never; }; export type InlineStyle = InlineStyleRecord | undefined | null | (Record | undefined | null)[] | (() => unknown); /********************************* Misc *********************************/ export type Props = Record | undefined | null; export type Callback = () => void; export type RNStyle = ViewStyle & TextStyle & ImageStyle; /******************************** Globals ********************************/ export interface ColorScheme { get: () => ColorSchemeName; set: (value: ColorSchemeName) => void; } export {}; //# sourceMappingURL=runtime.types.d.ts.map