npm.io
1.0.3 • Published 2 years ago

@types/react-pie-menu

Licence
MIT
Version
1.0.3
Deps
0
Size
6 kB
Vulns
0
Weekly
0
Stars
51.4K

Installation

npm install --save @types/react-pie-menu

Summary

This package contains type definitions for react-pie-menu (https://github.com/psychobolt/react-pie-menu#readme).

Details

Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/react-pie-menu.

index.d.ts

export type Callback = (_event: React.SyntheticEvent<unknown>) => unknown;

export interface SliceContext {
    radius?: string;
    centerRadius?: string;
    centralAngle?: number;
    polar?: boolean;
}

export interface SliceProps extends SliceContext {
    as?: unknown;
    className?: string;
    contentHeight?: string;
    onMouseEnter?: Callback;
    onMouseOver?: Callback;
    onMouseOut?: Callback;
    onSelect?: Callback;
    onKeyDown?: Callback;
    onFocus?: Callback;
    onBlur?: Callback;
    attrs?: Record<string, unknown>;
    children?: React.ReactNode;
}

export interface Metadata {
    className?: string;
    radiusPx?: number;
    centerRadiusPx?: number;
}

export interface PieMenuProps extends SliceContext, Metadata {
    slices?: { itemId: string; slice: React.ReactNode[] };
    startOffsetAngle?: number;
    polar?: boolean;
    Center?: React.ComponentType<unknown>;
    attrs?: Record<string, unknown>;
    children: React.ReactNode;
}

export interface PieCenterProps {
    onClick?: Callback;
    children?: React.ReactNode;
}

export interface ContextSelectorProps<T> {
    theme: {
        context: {
            [key: string]: T;
        };
    };
}

export interface ThemeContextSelector<T> {
    (props: ContextSelectorProps<T>): T;
}

// pie menu selectors
export const radius: ThemeContextSelector<number>;
export const centerRadius: ThemeContextSelector<number>;
export const centralAngle: ThemeContextSelector<number>;
export const polar: ThemeContextSelector<boolean>;
export function ifObtuse(value: any, _default: any): any;

// slice selectors
export const startAngle: ThemeContextSelector<number>;
export const endAngle: ThemeContextSelector<number>;
export const skew: ThemeContextSelector<number>;

// components
export const Slice: React.ComponentType<SliceProps>;
export const PieMenu: React.ComponentType<PieMenuProps>;
export const PieCenter: React.ComponentType<PieCenterProps>;

Additional Details

  • Last updated: Tue, 07 Nov 2023 0939 GMT
  • Dependencies: none

Credits

These definitions were written by Joel Keyser.