import type { Snippet } from 'svelte'; import type { IconBoxTone } from '../../atoms/IconBox/IconBox.svelte'; export type QuickActionTone = IconBoxTone; export type QuickActionSize = 'sm' | 'md' | 'lg'; export type QuickActionLayout = 'tiles' | 'compact' | 'list'; export type QuickActionIconName = 'plus' | 'upload' | 'share' | 'search' | 'zap' | 'file' | 'users' | 'settings' | 'download' | 'link' | 'message' | 'calendar' | 'folder' | 'sparkles'; export interface QuickAction { id: string; label: string; description?: string; /** Lucide name, emoji, or custom snippet */ icon?: Snippet | QuickActionIconName | (string & {}); tone?: QuickActionTone; badge?: string; disabled?: boolean; } interface QuickActionGridProps { actions?: QuickAction[]; /** Max columns for tiles. Compact uses auto-fill and treats this as a soft max. */ columns?: 2 | 3 | 4 | 5 | 6; size?: QuickActionSize; layout?: QuickActionLayout; /** Show chevron on list layout */ showChevron?: boolean; title?: string; description?: string; class?: string; onaction?: (id: string) => void; } declare const QuickActionGrid: import("svelte").Component; type QuickActionGrid = ReturnType; export default QuickActionGrid;