import type { HTMLAttributes } from "svelte/elements"; import type { Snippet } from "svelte"; export type ConfigItemSourceLevel = "code" | "admin" | "user"; export type ConfigItem = { id: string; name: string; key?: string; description?: string | null; /** Provenance : `code`/`admin` = système (verrouillé), `user` = personnalisé. */ sourceLevel: ConfigItemSourceLevel; /** Identifiant du parent si l'item est une copie d'un défaut système. */ parentId?: string | null; version?: number; }; export type ConfigItemCardProps = Omit, "class"> & { /** L'item de configuration décrit par la carte. */ item: ConfigItem; /** Vrai si une copie de cet item système existe déjà : masque l'action Copier. */ hasCopy?: boolean; /** Action Copier (items système uniquement). */ onCopy?: (id: string) => void; /** Action Éditer (items copiés ou créés par l'utilisateur). */ onEdit?: (id: string) => void; /** Action Réinitialiser (items copiés uniquement). */ onReset?: (id: string) => void; /** Action Supprimer (items créés par l'utilisateur uniquement). */ onDelete?: (id: string) => void; /** Désactive toutes les actions. */ disabled?: boolean; class?: string; /** Contenu supplémentaire sous la carte (formulaire d'édition, détails…). */ children?: Snippet; }; declare const ConfigItemCard: import("svelte").Component; type ConfigItemCard = ReturnType; export default ConfigItemCard; //# sourceMappingURL=ConfigItemCard.svelte.d.ts.map