import type { ArrayKeys, StringArrayKeys, StringKeys } from '../type';
import { type Snippet } from 'svelte';
import type { HTMLAttributes } from 'svelte/elements';
import { type Filter, type FilterDefinition } from '../utils';
declare class __sveltets_Render<T> {
    props(): HTMLAttributes<HTMLElement> & {
        items?: T[] | undefined;
        pathKey?: ArrayKeys<T> | undefined;
        current?: string[];
        Item?: Snippet<[Partial<T>]> | undefined;
        Folder?: Snippet<[T]> | undefined;
        solid?: boolean;
        cols?: number;
        itemWidth?: number;
        itemProps?: HTMLAttributes<HTMLElement>;
        itemDblClick?: ((item: T, e: Event) => void) | undefined;
        itemDragStart?: ((item: T, e: DragEvent) => void) | undefined;
        itemAfterUpdate?: ((item: T) => void) | undefined;
        itemDelete?: ((item: T, e: Event) => void) | undefined;
        query?: string;
        queriedKeys?: Iterable<StringKeys<T> | StringArrayKeys<T>> | undefined;
        searchBar?: boolean;
        displayPath?: boolean;
        flipDuration?: number;
        header?: string | Snippet;
        knownTags?: string[];
        filterDefs?: FilterDefinition<T>[] | undefined;
        filters?: Filter<T, keyof T>[] | undefined;
    };
    events(): {};
    slots(): {};
    bindings(): "items" | "filters" | "query" | "current";
    exports(): {};
}
interface $$IsomorphicComponent {
    new <T>(options: import('svelte').ComponentConstructorOptions<ReturnType<__sveltets_Render<T>['props']>>): import('svelte').SvelteComponent<ReturnType<__sveltets_Render<T>['props']>, ReturnType<__sveltets_Render<T>['events']>, ReturnType<__sveltets_Render<T>['slots']>> & {
        $$bindings?: ReturnType<__sveltets_Render<T>['bindings']>;
    } & ReturnType<__sveltets_Render<T>['exports']>;
    <T>(internal: unknown, props: ReturnType<__sveltets_Render<T>['props']> & {}): ReturnType<__sveltets_Render<T>['exports']>;
    z_$$bindings?: ReturnType<__sveltets_Render<any>['bindings']>;
}
declare const Browser: $$IsomorphicComponent;
type Browser<T> = InstanceType<typeof Browser<T>>;
export default Browser;
