@rnaga/wp-node
Version:
👉 **[View Full Documentation at rnaga.github.io/wp-node →](https://rnaga.github.io/wp-node/)**
56 lines • 1.79 kB
TypeScript
import { z } from "zod";
import { Config } from "../config";
import { Components } from "../core/components";
import { BlogUtil } from "../core/utils/blog.util";
import * as val from "../validators";
import { Crud } from "./crud";
import type * as types from "../types";
import { SiteUtil } from "../core/utils/site.util";
import { SettingsCrud } from "./settings.crud";
type BlogUpdate = z.infer<typeof val.crud.blogUpdate>;
type BlogInsert = z.infer<typeof val.crud.blogInsert>;
type DataType = BlogUpdate & {
is_main_blog: boolean;
blogname: string;
url: string;
settings: Awaited<ReturnType<InstanceType<typeof SettingsCrud>["get"]>>["data"];
};
type BlogSettings = z.infer<typeof val.crud.settings>;
export declare class BlogCrud extends Crud {
private config;
private blogUtil;
private siteUtil;
constructor(components: Components, config: Config, blogUtil: BlogUtil, siteUtil: SiteUtil);
private checkPermission;
get(blogId: number): Promise<{
data: DataType;
info: undefined;
}>;
update(blogId: number, data: Partial<BlogUpdate>, options?: {
settings: BlogSettings;
}): Promise<{
data: boolean;
info: undefined;
}>;
create(input: BlogInsert): Promise<{
data: number;
info: undefined;
}>;
delete(blogId: number): Promise<{
data: types.WpBlogs | undefined;
info: undefined;
}>;
list(args?: Partial<z.infer<typeof val.crud.blogListParams>>): Promise<{
data: DataType[];
info: {
pagination: {
page: number;
limit: number;
totalPage: number;
count: number;
};
};
}>;
}
export {};
//# sourceMappingURL=blog.crud.d.ts.map