@wordpress/components
Version:
UI components for WordPress.
49 lines • 1.59 kB
TypeScript
/**
* External dependencies
*/
import type { ReactNode } from 'react';
/**
* WordPress dependencies
*/
import type { Icon } from '@wordpress/icons';
/**
* Internal dependencies
*/
import type { ButtonAsButtonProps } from '../button/types';
import type Dropdown from '../dropdown';
import type { WordPressComponentProps } from '../ui/context';
export type CircularOptionPickerProps = {
/**
* A CSS class to apply to the wrapper element.
*/
className?: string;
/**
* The action(s) to be rendered after the options,
* such as a 'clear' button as seen in `ColorPalette`.
* Usually a `CircularOptionPicker.ButtonAction` or
* `CircularOptionPicker.DropdownLinkAction` component.
*/
actions?: ReactNode;
/**
* The options to be rendered, such as color swatches.
* Usually a `CircularOptionPicker.Option` component.
*/
options: ReactNode;
/**
* The child elements.
*/
children?: ReactNode;
};
export type DropdownLinkActionProps = {
buttonProps?: Omit<WordPressComponentProps<ButtonAsButtonProps, 'button', false>, 'children'>;
linkText: string;
dropdownProps: Omit<React.ComponentProps<typeof Dropdown>, 'className' | 'renderToggle'>;
className?: string;
};
export type OptionProps = Omit<WordPressComponentProps<ButtonAsButtonProps, 'button', false>, 'isPressed' | 'className'> & {
className?: string;
tooltipText?: string;
isSelected?: boolean;
selectedIconProps?: Omit<React.ComponentProps<typeof Icon>, 'icon' | 'size'>;
};
//# sourceMappingURL=types.d.ts.map