primeng
Version:
PrimeNG is an open source UI library for Angular featuring a rich set of 80+ components, a theme designer, various theme alternatives such as Material, Bootstrap, Tailwind, premium templates and professional support. In addition, it integrates with PrimeB
180 lines (175 loc) • 5.27 kB
TypeScript
import * as i0 from '@angular/core';
import { TemplateRef, AfterContentInit, EventEmitter, QueryList } from '@angular/core';
import { Router } from '@angular/router';
import * as i1 from 'primeng/api';
import { MenuItem, PrimeTemplate } from 'primeng/api';
import { BaseComponent } from 'primeng/basecomponent';
import * as _primeuix_styled from '@primeuix/styled';
import { BaseStyle } from 'primeng/base';
/**
* Defines valid templates in Breadcumb.
* @group Templates
*/
interface BreadcumbTemplates {
/**
* Custom template of item.
*/
item(context: {
/**
* Data of the item.
*/
$implicit: MenuItem;
}): TemplateRef<{
$implicit: MenuItem;
}>;
/**
* Custom template of separator.
*/
separator(): TemplateRef<any>;
}
/**
* Custom select event.
* @see {@link Breadcrumb.onItemClick}
* @group Events
*/
interface BreadcrumbItemClickEvent {
/**
* Browser event.
*/
originalEvent: Event;
/**
* Selected menu item .
*/
item: MenuItem;
}
declare class BreadCrumbStyle extends BaseStyle {
name: string;
theme: _primeuix_styled.StyleType;
classes: {
root: () => string[];
list: string;
homeItem: string;
separator: string;
item: ({ menuitem }: {
menuitem: any;
}) => (string | {
'p-disabled': any;
})[];
itemLink: string;
itemIcon: string;
itemLabel: string;
};
static ɵfac: i0.ɵɵFactoryDeclaration<BreadCrumbStyle, never>;
static ɵprov: i0.ɵɵInjectableDeclaration<BreadCrumbStyle>;
}
/**
*
* Breadcrumb provides contextual information about page hierarchy.
*
* [Live Demo](https://www.primeng.org/breadcrumb/)
*
* @module breadcrumbstyle
*
*/
declare enum BreadcrumbClasses {
/**
* Class name of the root element
*/
root = "p-breadcrumb",
/**
* Class name of the list element
*/
list = "p-breadcrumb-list",
/**
* Class name of the home item element
*/
homeItem = "p-breadcrumb-home-item",
/**
* Class name of the separator element
*/
separator = "p-breadcrumb-separator",
/**
* Class name of the item element
*/
item = "p-breadcrumb-item",
/**
* Class name of the item link element
*/
itemLink = "p-breadcrumb-item-link",
/**
* Class name of the item icon element
*/
itemIcon = "p-breadcrumb-item-icon",
/**
* Class name of the item label element
*/
itemLabel = "p-breadcrumb-item-label"
}
interface BreadcrumbStyle extends BaseStyle {
}
/**
* Breadcrumb provides contextual information about page hierarchy.
* @group Components
*/
declare class Breadcrumb extends BaseComponent implements AfterContentInit {
private router;
/**
* An array of menuitems.
* @group Props
*/
model: MenuItem[] | undefined;
/**
* Inline style of the component.
* @group Props
*/
style: {
[klass: string]: any;
} | null | undefined;
/**
* Style class of the component.
* @group Props
*/
styleClass: string | undefined;
/**
* MenuItem configuration for the home icon.
* @group Props
*/
home: MenuItem | undefined;
/**
* Defines a string that labels the home icon for accessibility.
* @group Props
*/
homeAriaLabel: string | undefined;
/**
* Fired when an item is selected.
* @param {BreadcrumbItemClickEvent} event - custom click event.
* @group Emits
*/
onItemClick: EventEmitter<BreadcrumbItemClickEvent>;
_componentStyle: BreadCrumbStyle;
constructor(router: Router);
onClick(event: MouseEvent, item: MenuItem): void;
/**
* Defines template option for item.
* @group Templates
*/
itemTemplate: TemplateRef<any> | undefined;
/**
* Defines template option for separator.
* @group Templates
*/
separatorTemplate: TemplateRef<any> | undefined;
templates: QueryList<PrimeTemplate> | undefined;
_separatorTemplate: TemplateRef<any> | undefined;
_itemTemplate: TemplateRef<any> | undefined;
ngAfterContentInit(): void;
static ɵfac: i0.ɵɵFactoryDeclaration<Breadcrumb, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<Breadcrumb, "p-breadcrumb", never, { "model": { "alias": "model"; "required": false; }; "style": { "alias": "style"; "required": false; }; "styleClass": { "alias": "styleClass"; "required": false; }; "home": { "alias": "home"; "required": false; }; "homeAriaLabel": { "alias": "homeAriaLabel"; "required": false; }; }, { "onItemClick": "onItemClick"; }, ["itemTemplate", "separatorTemplate", "templates"], never, true, never>;
}
declare class BreadcrumbModule {
static ɵfac: i0.ɵɵFactoryDeclaration<BreadcrumbModule, never>;
static ɵmod: i0.ɵɵNgModuleDeclaration<BreadcrumbModule, never, [typeof Breadcrumb, typeof i1.SharedModule], [typeof Breadcrumb, typeof i1.SharedModule]>;
static ɵinj: i0.ɵɵInjectorDeclaration<BreadcrumbModule>;
}
export { BreadCrumbStyle, Breadcrumb, BreadcrumbClasses, BreadcrumbModule };
export type { BreadcrumbItemClickEvent, BreadcrumbStyle, BreadcumbTemplates };