@mdfriday/foundry
Version:
The core engine of MDFriday. Convert Markdown and shortcodes into fully themed static sites – Hugo-style, powered by TypeScript.
56 lines (55 loc) • 1.6 kB
TypeScript
import { Page, PageGroups, Pager, PagerManager, Pages } from "@internal/domain/content";
export declare class PaginatorImpl {
private paginatedElements;
private _pagers;
private base;
private total;
private size;
constructor(paginatedElements: any[][], total: number, size: number, base: string);
totalPages(): number;
pagers(): PagerImpl[];
getElement(pageNumber: number): any[];
getBase(): string;
getPagers(): PagerImpl[];
getAllPages(): Pages;
}
declare class PagerImpl implements Pager {
private number;
private paginator;
constructor(number: number, paginator: PaginatorImpl);
pageNumber(): number;
totalPages(): number;
url(): string;
pages(): Pages;
allPages(): Pages;
pagers(): Pager[];
first(): Pager;
last(): Pager;
hasPrev(): boolean;
prev(): Pager | null;
hasNext(): boolean;
next(): Pager | null;
private element;
private pathJoin;
}
export interface PagerSvc {
pageSize(): number;
globalRegularPages(): Promise<any[]>;
}
export declare class PaginatorManagerImpl implements PagerManager {
private currentPager;
private initialized;
private svc;
private page;
constructor(svc: PagerSvc, page: Page);
current(): Promise<Pager>;
setCurrent(current: Pager): void;
paginate(groups: PageGroups): Promise<Pager>;
paginate(pages: Pages): Promise<Pager>;
paginator(): Promise<Pager>;
private initializePaginator;
private newPaginatorFromPages;
private newPaginatorFromPageGroups;
private splitPages;
}
export {};