UNPKG

melt

Version:

The next generation of Melt UI. Built for Svelte 5.

37 lines (36 loc) 1.48 kB
import { type Attachment } from "svelte/attachments"; export declare function createId(): string; type DataIds<Name extends string, Parts extends string[]> = { [P in Parts[number]]: `data-melt-${Name}-${P}`; }; /** * @deprecated use `createBuilderMetaData` instead */ export declare function createDataIds<const Name extends string, const Parts extends string[]>(name: Name, parts: Parts): DataIds<Name, Parts>; type Ids<T extends DataIds<string, string[]>> = { [P in keyof T]: string; }; export declare function createIds<const T extends DataIds<string, string[]>>(identifiers: T): Ids<T>; export type BuilderMetadata<Name extends string, Parts extends string[]> = { dataAttrs: { [P in Parts[number]]: `data-melt-${Name}-${P}`; }; dataSelectors: { [P in Parts[number]]: `[data-melt-${Name}-${P}]`; }; createIds: () => { [P in Parts[number]]: string; }; createReferences: () => { get: (key: Parts[number]) => HTMLElement | undefined; attach: (key: Parts[number]) => Attachment<HTMLElement>; key: any; }; }; export declare function createBuilderMetadata<const Name extends string, const Parts extends string[]>(name: Name, parts: Parts): BuilderMetadata<Name, Parts>; export declare function createReferences<const Parts extends string[]>(): { get(key: Parts[number]): HTMLElement | undefined; attach(key: Parts[number]): Attachment<HTMLElement>; key: symbol; }; export {};