import { InjectionKey } from 'vue';
import { RouteRecordRaw } from 'vue-router';
import { NavigationItem } from '../types/Plugins';
import { NavigationUrlPayload } from '../intercom/types';

interface IPluginOptions {
    navigationItem: Pick<NavigationItem, "name" | "view" | "namespace">;
    mainRoutes?: RouteRecordRaw[];
    routes?: RouteRecordRaw[];
    locales?: Record<string, any>;
}
export declare const LOCAL_PLUGIN_INTERCOM: InjectionKey<{
    navigationItem: Pick<NavigationItem, "name" | "view" | "namespace">;
    itemAdd?: (item: RouteRecordRaw) => void;
    itemUpdate?: (item: RouteRecordRaw) => void;
    itemRemove?: (item: RouteRecordRaw) => void;
    sendTitles?: (titles: string[]) => void;
    navigateTo?: (payload: NavigationUrlPayload) => void;
}>;
export declare const useLocalPluginIntercom: ({ navigationItem, mainRoutes, routes, locales, }: IPluginOptions) => {
    navigationItem: Pick<NavigationItem, "name" | "view" | "namespace">;
    itemAdd: (item: RouteRecordRaw) => void;
    itemUpdate: (item: RouteRecordRaw) => void;
    itemRemove: (item: RouteRecordRaw) => void;
    sendTitles: (titles: string[]) => void;
    navigateTo: (payload: NavigationUrlPayload) => void;
};
export {};
