import { Type } from '@angular/core'; import { Route } from '@angular/router'; import { detailComponentWithResolver } from '../../common/base-detail.component'; import { PageLocationId } from '../../common/component-registry-types'; import * as i0 from "@angular/core"; /** * @description * The object used to configure a new page tab. * * @docsCategory tabs */ export interface PageTabConfig { /** * @description * A valid location representing a list or detail page. */ location: PageLocationId; /** * @description * An optional icon to display in the tab. The icon * should be a valid shape name from the [Clarity Icons](https://core.clarity.design/foundation/icons/shapes/) * set. */ tabIcon?: string; /** * @description * The route path to the tab. This will be appended to the * route of the parent page. */ route: string; /** * @description * The name of the tab to display in the UI. */ tab: string; /** * @description * The priority of the tab. Tabs with a lower priority will be displayed first. */ priority?: number; /** * @description * The component to render at the route of the tab. */ component: Type | ReturnType; /** * @description * You can optionally provide any native Angular route configuration options here. * Any values provided here will take precedence over the values generated * by the `route` and `component` properties. */ routeConfig?: Route; } export declare class PageService { private registry; registerPageTab(config: PageTabConfig): void; getPageTabRoutes(location: PageLocationId): Route[]; getPageTabs(location: PageLocationId): PageTabConfig[]; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; }