import { Maybe } from '../utils/types'; import { CSSProperties, RefObject } from 'react'; import { Effect } from './effects'; import { Shape } from './shapes'; export declare const defaultCursorStyles: CSSProperties; export declare type GlobalStyle = { color: NonNullable; height: NonNullable; width: NonNullable; }; interface StyleProps extends GlobalStyle { cursor?: Maybe; target?: RefObject; } export declare type Style = CSSProperties | ((sharedStyle: StyleProps) => CSSProperties); declare type ComputeStyleProps = { style?: Style; globalStyle: GlobalStyle; target?: RefObject; cursor?: Maybe; }; export declare function computeStyle({ style, globalStyle, target, cursor, }: ComputeStyleProps): CSSProperties; export declare type EffectStyles = `Effect.${Effect}`; export declare type ShapeStyles = `Shape.${Shape}`; export declare type CursorStylePayload = Style | EffectStyles | ShapeStyles; export declare function getStyleFromPayload(target?: RefObject): (payload: CursorStylePayload) => { style: Style; context?: { target?: RefObject; }; }; export {};