import type { AriaLabelingProps } from '../../../core/types/a11y-props.js'; import type { BehaviorTrackingProps } from '../../../core/types/behavior-tracking-props.js'; import type { DataTestId } from '../../../core/types/data-props.js'; import type { MaskingProps } from '../../../core/types/masking-props.js'; import type { StylingProps } from '../../../core/types/styling-props.js'; import type { WithChildren } from '../../../core/types/with-children.js'; /** * @public */ export interface EmptyStateProps extends WithChildren, AriaLabelingProps, StylingProps, DataTestId, MaskingProps, BehaviorTrackingProps { /** * Size of the empty state component. * @defaultValue 'default' */ size?: 'small' | 'default' | 'large'; } /** * @public */ export interface EmptyStateVisualPresetProps extends StylingProps, DataTestId { /** * The visual context of the illustration. */ context: 'chart' | 'document' | 'generic' | 'table' | 'query'; /** * A visual cue added to the illustration hinting at the reason the state is empty. */ type: 'something-missing' | 'no-result' | 'something-wrong' | 'create-new' | 'no-permission'; } /** * @internal */ type _AssetTheme = { dark: string; light: string; }; /** * @internal */ type _AssetType = { 'create-new': _AssetTheme; 'no-result': _AssetTheme; 'no-permission': _AssetTheme; 'something-missing': _AssetTheme; 'something-wrong': _AssetTheme; }; /** * @internal */ export type _AssetMap = { chart: _AssetType; document: _AssetType; generic: _AssetType; query: _AssetType; table: _AssetType; }; export {};