export type AsyncStatus = 'idle' | 'loading' | 'empty' | 'error' | 'success';
export type OreAsyncEvents = {
retry: undefined;
};
export type OreAsyncProps = {
'empty-description'?: string;
'empty-label'?: string;
'error-description'?: string;
'error-label'?: string;
retryable?: boolean;
status?: AsyncStatus;
};
/**
* A container for handling asynchronous states (loading, empty, error, success).
* Simplifies data fetching UI by providing consistent fallbacks.
*
* @element ore-async
*
* @attr {string} status - current state: 'idle' | 'loading' | 'empty' | 'error' | 'success' (default: 'success')
* @attr {boolean} retryable - show retry button in error state (default: false)
* @attr {string} empty-label - title for empty state (default: 'No content yet')
* @attr {string} empty-description - optional text for empty state
* @attr {string} error-label - title for error state (default: 'Something went wrong')
* @attr {string} error-description - optional text for error state
*
* @fires retry - Emitted when the retry button is clicked (no detail payload)
*
* @slot - default content shown in 'success' state
* @slot loading - custom loading UI (overrides default skeletons)
* @slot empty - custom empty UI (overrides default icon/label)
* @slot error - custom error UI (overrides default icon/label)
*
* @cssprop --async-color - Text/icon color used by default async state content
* @cssprop --async-gap - Vertical spacing between icon, title, description, and actions
* @cssprop --async-icon-size - Icon size for built-in loading/empty/error visuals
* @example
* ```html
*
*
*
*
*
*
*
*
*
*
*
*
*
* ```
*/
export declare const ASYNC_TAG: "ore-async";
//# sourceMappingURL=async.d.ts.map