import { NavigationNode, NavigationNodeInitializeMessage } from "../admin";
import { ApiPath } from "../Extends";
import { IMessageBusTopicPublishSubscriber, NavigationMenuNode } from "../Messaging";
export interface IRegisterAdminNavigationNode {
    registerNavigationNode: (nodes: NavigationNode | NavigationNode[]) => void;
}
export interface IRegisterAdminNavigationMenuNode {
    registerNavigationMenuNode: (nodes: NavigationMenuNode | NavigationMenuNode[]) => void;
}
export interface IAdminApi {
    registration: {
        navigationNode: Promise<IRegisterAdminNavigationNode>;
        navigationMenuNode: Promise<IRegisterAdminNavigationMenuNode>;
    };
    events: {
        initializeNavigationNode: Promise<IMessageBusTopicPublishSubscriber<NavigationNodeInitializeMessage>>;
    };
}
declare module "./UxApi" {
    interface IOmniaUxApi {
        admin: IAdminApi;
    }
    interface IOmniaUxExtendApiManifest {
        admin: {
            registration: {
                navigationNode: ApiPath;
                navigationMenuNode: ApiPath;
            };
            events: {
                initializeNavigationNode: ApiPath;
            };
        };
    }
}
