import { App } from 'vue';
import { RouteRecordRaw, NavigationGuardWithThis } from 'vue-router';
import { Menu } from './_menu';
import { CustomConfig } from './_settings';
export type KodamaParams = {
    router: {
        routes: Array<RouteRecordRaw>;
        beforeEach?: NavigationGuardWithThis<undefined>;
        mode?: 'hash' | 'web' | 'memory';
        route404?: string | boolean;
    };
    components: Record<string, {
        [key: string]: any;
    }>;
    menu: () => Menu[];
    settings: CustomConfig;
    auth: {
        getName: () => string;
        getLastName: () => string;
        isLoggedIn: () => boolean;
        login: (username: string, password: string) => Promise<any>;
        forgot: (email: string) => Promise<any>;
        logout: () => boolean;
    };
};
export declare function init(params: KodamaParams, app?: App<Element>): App<Element>;
