claritykit-svelte
Version:
A comprehensive Svelte component library focused on accessibility, ADHD-optimized design, developer experience, and full SSR compatibility
77 lines • 2.17 kB
TypeScript
interface MediaItem {
id: string;
src: string;
alt: string;
caption?: string;
thumbnail?: string;
width?: number;
height?: number;
type?: 'image' | 'video';
metadata?: Record<string, any>;
}
interface Props {
items: MediaItem[];
columns?: number;
gap?: string;
aspectRatio?: string;
showCaptions?: boolean;
showThumbnails?: boolean;
enableLightbox?: boolean;
enableKeyboardNavigation?: boolean;
enableInfiniteScroll?: boolean;
loadingStrategy?: 'eager' | 'lazy' | 'progressive';
thumbnailSize?: 'sm' | 'md' | 'lg';
layout?: 'grid' | 'masonry' | 'carousel';
selectable?: boolean;
selectedItems?: string[];
maxSelections?: number;
sortable?: boolean;
filterable?: boolean;
searchable?: boolean;
class?: string;
}
interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any, Exports = {}, Bindings = string> {
new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
$$bindings?: Bindings;
} & Exports;
(internal: unknown, props: Props & {
$$events?: Events;
$$slots?: Slots;
}): Exports & {
$set?: any;
$on?: any;
};
z_$$bindings?: Bindings;
}
declare const MediaGallery: $$__sveltets_2_IsomorphicComponent<Props, {
select: CustomEvent<{
item: MediaItem;
selected: boolean;
}>;
open: CustomEvent<{
item: MediaItem;
index: number;
}>;
close: CustomEvent<{
item: MediaItem;
index: number;
}>;
load: CustomEvent<{
items: MediaItem[];
}>;
search: CustomEvent<{
query: string;
}>;
filter: CustomEvent<{
type: string;
}>;
sort: CustomEvent<{
by: string;
direction: string;
}>;
} & {
[evt: string]: CustomEvent<any>;
}, {}, {}, "selectedItems">;
type MediaGallery = InstanceType<typeof MediaGallery>;
export default MediaGallery;
//# sourceMappingURL=MediaGallery.svelte.d.ts.map