@furystack/shades-common-components
Version:
Common UI components for FuryStack Shades
39 lines • 1.8 kB
TypeScript
import type { PartialElement } from '@furystack/shades';
import { checkCircle } from './icons/icon-definitions.js';
/**
* Result status types. Includes both semantic statuses and HTTP error codes.
*/
export type ResultStatus = 'success' | 'error' | 'warning' | 'info' | '403' | '404' | '500';
export type ResultProps = PartialElement<HTMLElement> & {
/** The status determines the icon and color of the result */
status: ResultStatus;
/** The main title text */
title: string;
/** Optional subtitle text below the title */
subtitle?: string;
/** Optional custom icon to override the default status icon */
icon?: JSX.Element | string;
};
declare const defaultIconDefs: Record<ResultStatus, typeof checkCircle>;
declare const getDefaultIcon: (status: ResultStatus) => JSX.Element;
declare const defaultTitles: Record<ResultStatus, string>;
/**
* Result component for displaying operation outcomes, status pages, and feedback.
* Supports success, error, warning, info statuses and common HTTP error codes (403, 404, 500).
*/
export declare const Result: (props: Omit<Partial<HTMLElement>, "style"> & {
style?: Partial<CSSStyleDeclaration>;
} & {
ref?: import("@furystack/shades").RefObject<Element>;
} & {
/** The status determines the icon and color of the result */
status: ResultStatus;
/** The main title text */
title: string;
/** Optional subtitle text below the title */
subtitle?: string;
/** Optional custom icon to override the default status icon */
icon?: JSX.Element | string;
}, children?: import("@furystack/shades").ChildrenList) => JSX.Element;
export { getDefaultIcon as resultGetDefaultIcon, defaultIconDefs as resultDefaultIconDefs, defaultTitles as resultDefaultTitles, };
//# sourceMappingURL=result.d.ts.map