import { Formatters, Binders, Adapters, Components, Options } from "./types/index.js";
import { parseTemplate } from "./parse-template.js";
import { Binder } from "./binder.js";
import { View } from "./view.js";
import { ModulesService } from "./services/module.service.js";
import { LifecycleService } from "./services/lifecycle.service.js";
export declare class Riba {
    static handler(this: any, context: any, ev: Event, binder: Binder, el: HTMLElement): void;
    private static instance;
    module: ModulesService;
    lifecycle: LifecycleService;
    binders: Binders<any>;
    components: Components;
    formatters: Formatters;
    adapters: Adapters;
    parseTemplate: typeof parseTemplate;
    parseType: (input?: string | null, isAttribute?: boolean) => {
        type: number;
        value: any;
    };
    templateDelimiters: string[];
    rootInterface: string;
    preloadData: boolean;
    removeBinderAttributes: boolean;
    blockNodeNames: string[];
    blockUnknownCustomElements: boolean;
    private _prefix;
    private _fullPrefix;
    set prefix(value: string[]);
    get prefix(): string[];
    get fullPrefix(): string[];
    constructor();
    configure(options: Partial<Options>): void;
    getViewOptions(options?: Partial<Options>): Options;
    bind(el: HTMLElement | DocumentFragment | HTMLUnknownElement[], models?: any, options?: Options): View;
}
