| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- import { Ref } from './common';
- import { IUser } from './user';
- import { IRevision } from './revision';
- import { ITag } from './tag';
- import { HasObjectId } from './has-object-id';
- export interface IPage {
- path: string,
- status: string,
- revision: Ref<IRevision>,
- tags: Ref<ITag>[],
- creator: Ref<IUser>,
- createdAt: Date,
- updatedAt: Date,
- seenUsers: Ref<IUser>[],
- parent: Ref<IPage> | null,
- descendantCount: number,
- isEmpty: boolean,
- redirectTo: string,
- grant: number,
- grantedUsers: Ref<IUser>[],
- grantedGroup: Ref<any>,
- lastUpdateUser: Ref<IUser>,
- liker: Ref<IUser>[],
- commentCount: number
- slackChannels: string,
- pageIdOnHackmd: string,
- revisionHackmdSynced: Ref<IRevision>,
- hasDraftOnHackmd: boolean,
- deleteUser: Ref<IUser>,
- deletedAt: Date,
- }
- export type IPageHasId = IPage & HasObjectId;
- export type IPageForItem = Partial<IPageHasId & {isTarget?: boolean}>;
- export type IPageInfo = {
- bookmarkCount: number,
- sumOfLikers: number,
- likerIds: string[],
- sumOfSeenUsers: number,
- seenUserIds: string[],
- isSeen?: boolean,
- isLiked?: boolean,
- }
- export type IPageWithMeta<M = Record<string, unknown>> = {
- pageData: IPageHasId,
- pageMeta?: Partial<IPageInfo> & M,
- };
|