@paroicms/server
Version:
The ParoiCMS server
45 lines (44 loc) • 1.92 kB
TypeScript
import { type Tracker } from "@paroicms/internal-server-lib";
import type { Obj, ParsedLNodeId, ScDocumentKind, ScSorting } from "@paroicms/public-anywhere-lib";
import type { LabeledBy } from "@paroicms/public-server-lib";
import type { Knex } from "knex";
import type { RenderingContext } from "../liquidjs-tools/liquidjs-rendering/rendering-context.js";
import type { SiteContext } from "../site-context/site-context.types.js";
import type { TpDocValues } from "./rendering-payload.types.js";
export declare function getDocItem(siteContext: SiteContext, tracker: Tracker, documentId: ParsedLNodeId): Promise<TpDocValues>;
export declare function getDocItem(siteContext: SiteContext, tracker: Tracker, documentId: ParsedLNodeId, options: {
allowUndef: true;
}): Promise<TpDocValues | undefined>;
export interface PaginatedResult<T> {
items: T[];
total: number;
pageIndex: number;
pageCount: number;
pageSize: number;
}
export interface GetPaginatedDocsOptions {
parentId: ParsedLNodeId;
documentKind: ScDocumentKind;
orderBy?: ScSorting;
labeledBy?: LabeledBy;
pageIndex: number;
pageSize: number;
}
export declare function getPaginatedListOfDocValues(renderingContext: RenderingContext, options: GetPaginatedDocsOptions): Promise<PaginatedResult<TpDocValues>>;
export interface GetDocsOptions {
parentId: ParsedLNodeId;
documentKind: ScDocumentKind;
orderBy?: ScSorting;
offset?: number;
limit?: number;
labeledBy?: LabeledBy;
}
export declare function getListOfDocValues(renderingContext: RenderingContext, options: GetDocsOptions): Promise<TpDocValues[]>;
export declare function querySelectDocValues(query: Knex.QueryBuilder, { omitId }?: {
omitId?: boolean;
}): void;
export declare function formatDocValues(row: Obj, { language, nodeId, typeName }?: {
language?: string;
nodeId?: string;
typeName?: string;
}): TpDocValues;