@rnaga/wp-node
Version:
👉 **[View Full Documentation at rnaga.github.io/wp-node →](https://rnaga.github.io/wp-node/)**
34 lines • 1.74 kB
TypeScript
import { Config } from "../../config";
import * as defaults from "../../defaults";
import { Components } from "../components";
import { Post } from "../post";
import type * as types from "../../types";
export declare class PostUtil {
private config;
private components;
constructor(config: Config, components: Components);
toPost(post: types.Tables["posts"]): Post;
toPosts(posts: types.Tables["posts"][]): Post[];
get(id: number): Promise<Post>;
getBySlug(slug: string): Promise<Post | undefined>;
isPubliclyViewable(postIdOrPost: number | Post): Promise<boolean>;
getViewableTypes(): types.PostType[];
isTypeViewable(typeObjectOrString: string | ReturnType<PostUtil["getTypeObject"]>): boolean;
isStatusViewable(statusObjectOrString: string | ReturnType<PostUtil["getStatusObject"]>): boolean;
getStatusObject(status: typeof defaults.postStatuses | string | undefined): {
label: string;
public?: boolean | undefined;
protected?: boolean | undefined;
private?: boolean | undefined;
internal?: boolean | undefined;
_builtin?: boolean | undefined;
} | undefined;
getStatus(post?: Post, parent?: Post): Promise<string | undefined>;
getAttachedFile(postId: number, unfiltered?: boolean): Promise<string | undefined>;
getAttachmentMetadata<T = Record<string, any>>(postId: number): Promise<NonNullable<Awaited<T>> | undefined>;
getTypeObject<T>(name: T | (typeof defaults.postTypes)[number]): types.Config["posts"]["types"][string] | undefined;
private getCapabilities;
getUniqueSlug(slug: string, post: number | Post, maxSuffix?: number): Promise<string>;
private truncateSlug;
}
//# sourceMappingURL=post.util.d.ts.map