@spaced-out/ui-design-system
Version:
Sense UI components library
48 lines • 1.73 kB
TypeScript
import * as React from 'react';
import type { Flow } from 'flow-to-typescript-codemod';
import type { IconType } from '../../components/Icon';
type ClassNames = Readonly<{
wrapper?: string;
icon?: string;
statusIndicator?: string;
}>;
export declare const CHIP_SEMANTIC: Readonly<{
primary: "primary";
information: "information";
success: "success";
warning: "warning";
danger: "danger";
secondary: "secondary";
}>;
export type ChipSemanticType = (typeof CHIP_SEMANTIC)[keyof typeof CHIP_SEMANTIC];
export interface BaseChipProps {
classNames?: ClassNames;
semantic?: ChipSemanticType;
children: React.ReactNode;
disabled?: boolean;
showStatusIndicator?: boolean;
disableHoverState?: boolean;
line?: number;
wordBreak?: string;
onClick?: ((arg1: React.SyntheticEvent<HTMLElement>) => unknown) | null | undefined;
onMouseEnter?: React.MouseEventHandler<HTMLDivElement>;
onMouseLeave?: React.MouseEventHandler<HTMLDivElement>;
testId?: string;
}
export interface LargeChipProps extends Omit<BaseChipProps, 'iconName' | 'iconType' | 'dismissable' | 'onDismiss' | 'size'> {
iconName?: string;
iconType?: IconType;
dismissable?: boolean;
onDismiss?: ((arg1: React.SyntheticEvent<HTMLElement>) => unknown) | null | undefined;
size?: 'large';
}
export interface MediumChipProps extends Omit<LargeChipProps, 'size'> {
size?: 'medium';
}
export interface SmallChipProps extends Omit<BaseChipProps, 'size'> {
size?: 'small';
}
export type ChipProps = LargeChipProps | MediumChipProps | SmallChipProps;
export declare const Chip: Flow.AbstractComponent<ChipProps, HTMLDivElement>;
export {};
//# sourceMappingURL=Chip.d.ts.map