@wepublish/api
Version:
API core for we.publish.
219 lines (218 loc) • 7.61 kB
TypeScript
import { Page, Prisma, PrismaClient } from '@prisma/client';
import { Context } from '../../context';
import { PageWithRevisions } from '../../db/page';
export declare const deletePageById: (id: string, authenticate: Context['authenticate'], prisma: PrismaClient) => Promise<Page>;
type CreatePageInput = Omit<Prisma.PageRevisionCreateInput, 'properties' | 'revision'> & {
properties: Prisma.MetadataPropertyCreateManyPageRevisionInput[];
};
export declare const createPage: (input: CreatePageInput, authenticate: Context['authenticate'], page: PrismaClient['page']) => Promise<{
draft: {
properties: (import("@prisma/client/runtime/library").GetResult<{
id: string;
createdAt: Date;
modifiedAt: Date;
key: string;
value: string;
public: boolean;
articleRevisionId: string;
pageRevisionId: string;
subscriptionId: string;
userId: string;
}, unknown> & {})[];
} & import("@prisma/client/runtime/library").GetResult<{
id: string;
revision: number;
createdAt: Date;
modifiedAt: Date;
updatedAt: Date;
publishedAt: Date;
publishAt: Date;
slug: string;
title: string;
description: string;
tags: string[];
imageID: string;
socialMediaTitle: string;
socialMediaDescription: string;
socialMediaImageID: string;
blocks: Prisma.JsonValue;
}, unknown> & {};
pending: {
properties: (import("@prisma/client/runtime/library").GetResult<{
id: string;
createdAt: Date;
modifiedAt: Date;
key: string;
value: string;
public: boolean;
articleRevisionId: string;
pageRevisionId: string;
subscriptionId: string;
userId: string;
}, unknown> & {})[];
} & import("@prisma/client/runtime/library").GetResult<{
id: string;
revision: number;
createdAt: Date;
modifiedAt: Date;
updatedAt: Date;
publishedAt: Date;
publishAt: Date;
slug: string;
title: string;
description: string;
tags: string[];
imageID: string;
socialMediaTitle: string;
socialMediaDescription: string;
socialMediaImageID: string;
blocks: Prisma.JsonValue;
}, unknown> & {};
published: {
properties: (import("@prisma/client/runtime/library").GetResult<{
id: string;
createdAt: Date;
modifiedAt: Date;
key: string;
value: string;
public: boolean;
articleRevisionId: string;
pageRevisionId: string;
subscriptionId: string;
userId: string;
}, unknown> & {})[];
} & import("@prisma/client/runtime/library").GetResult<{
id: string;
revision: number;
createdAt: Date;
modifiedAt: Date;
updatedAt: Date;
publishedAt: Date;
publishAt: Date;
slug: string;
title: string;
description: string;
tags: string[];
imageID: string;
socialMediaTitle: string;
socialMediaDescription: string;
socialMediaImageID: string;
blocks: Prisma.JsonValue;
}, unknown> & {};
} & import("@prisma/client/runtime/library").GetResult<{
id: string;
createdAt: Date;
modifiedAt: Date;
publishedId: string;
pendingId: string;
draftId: string;
}, unknown> & {}>;
export declare const duplicatePage: (id: string, authenticate: Context['authenticate'], pages: Context['loaders']['pages'], pageClient: PrismaClient['page']) => Promise<PageWithRevisions>;
export declare const unpublishPage: (id: string, authenticate: Context['authenticate'], pageClient: PrismaClient['page']) => Promise<PageWithRevisions>;
export declare const publishPage: (id: string, input: Pick<Prisma.PageRevisionCreateInput, 'publishAt' | 'publishedAt' | 'updatedAt'>, authenticate: Context['authenticate'], pageClient: PrismaClient['page']) => Promise<PageWithRevisions | null>;
type UpdatePageInput = Omit<Prisma.PageRevisionCreateInput, 'revision' | 'properties'> & {
properties: Prisma.MetadataPropertyUncheckedCreateWithoutPageRevisionInput[];
};
export declare const updatePage: (id: string, { properties, ...input }: UpdatePageInput, authenticate: Context['authenticate'], pageClient: PrismaClient['page']) => Promise<{
draft: {
properties: (import("@prisma/client/runtime/library").GetResult<{
id: string;
createdAt: Date;
modifiedAt: Date;
key: string;
value: string;
public: boolean;
articleRevisionId: string;
pageRevisionId: string;
subscriptionId: string;
userId: string;
}, unknown> & {})[];
} & import("@prisma/client/runtime/library").GetResult<{
id: string;
revision: number;
createdAt: Date;
modifiedAt: Date;
updatedAt: Date;
publishedAt: Date;
publishAt: Date;
slug: string;
title: string;
description: string;
tags: string[];
imageID: string;
socialMediaTitle: string;
socialMediaDescription: string;
socialMediaImageID: string;
blocks: Prisma.JsonValue;
}, unknown> & {};
pending: {
properties: (import("@prisma/client/runtime/library").GetResult<{
id: string;
createdAt: Date;
modifiedAt: Date;
key: string;
value: string;
public: boolean;
articleRevisionId: string;
pageRevisionId: string;
subscriptionId: string;
userId: string;
}, unknown> & {})[];
} & import("@prisma/client/runtime/library").GetResult<{
id: string;
revision: number;
createdAt: Date;
modifiedAt: Date;
updatedAt: Date;
publishedAt: Date;
publishAt: Date;
slug: string;
title: string;
description: string;
tags: string[];
imageID: string;
socialMediaTitle: string;
socialMediaDescription: string;
socialMediaImageID: string;
blocks: Prisma.JsonValue;
}, unknown> & {};
published: {
properties: (import("@prisma/client/runtime/library").GetResult<{
id: string;
createdAt: Date;
modifiedAt: Date;
key: string;
value: string;
public: boolean;
articleRevisionId: string;
pageRevisionId: string;
subscriptionId: string;
userId: string;
}, unknown> & {})[];
} & import("@prisma/client/runtime/library").GetResult<{
id: string;
revision: number;
createdAt: Date;
modifiedAt: Date;
updatedAt: Date;
publishedAt: Date;
publishAt: Date;
slug: string;
title: string;
description: string;
tags: string[];
imageID: string;
socialMediaTitle: string;
socialMediaDescription: string;
socialMediaImageID: string;
blocks: Prisma.JsonValue;
}, unknown> & {};
} & import("@prisma/client/runtime/library").GetResult<{
id: string;
createdAt: Date;
modifiedAt: Date;
publishedId: string;
pendingId: string;
draftId: string;
}, unknown> & {}>;
export {};