UNPKG

@chevre/domain

Version:

Chevre Domain Library for Node.js

72 lines (71 loc) 2.67 kB
import type { BulkWriteResult } from 'mongodb'; import { Connection, FilterQuery, Types } from 'mongoose'; import * as factory from '../factory'; type IKeyOfProjection = keyof factory.creativeWork.movie.ICreativeWork; /** * コンテンツリポジトリ */ export declare class CreativeWorkRepo { private readonly creativeWorkModel; constructor(connection: Connection); static CREATE_MONGO_CONDITIONS(params: factory.creativeWork.movie.ISearchConditions): FilterQuery<import("@chevre/factory/lib/creativeWork/movie").ICreativeWork>[]; /** * コンテンツを保管する */ saveMovie(params: factory.creativeWork.movie.ICreativeWork & { /** * ドキュメント作成時には無視される */ $unset?: { [key in keyof factory.creativeWork.movie.ICreativeWork]?: 1; }; }): Promise<{ id: string; }>; /** * コードをキーにして冪等作成 */ upsertMoviesByIdentifier(params: { $set: factory.creativeWork.movie.ICreativeWork; $unset?: { [key in keyof factory.creativeWork.movie.ICreativeWork]?: 1; }; }[], options?: { replace?: boolean; }): Promise<{ bulkWriteResult: BulkWriteResult; } | void>; /** * コンテンツを検索する */ projectFields(params: factory.creativeWork.movie.ISearchConditions, inclusion: IKeyOfProjection[]): Promise<factory.creativeWork.movie.ICreativeWork[]>; /** * コンテンツを削除する */ deleteMovie(params: { id: string; }): Promise<void>; deleteByProject(params: { project: { id: string; }; }): Promise<void>; getCursor(conditions: FilterQuery<factory.creativeWork.movie.ICreativeWork>, projection: any): import("mongoose").Cursor<import("mongoose").Document<unknown, {}, import("@chevre/factory/lib/creativeWork/movie").ICreativeWork & { description?: string; }> & import("@chevre/factory/lib/creativeWork/movie").ICreativeWork & { description?: string; } & { _id: Types.ObjectId; }, import("mongoose").QueryOptions<import("mongoose").Document<unknown, {}, import("@chevre/factory/lib/creativeWork/movie").ICreativeWork & { description?: string; }> & import("@chevre/factory/lib/creativeWork/movie").ICreativeWork & { description?: string; } & { _id: Types.ObjectId; }>>; unsetUnnecessaryFields(params: { filter: FilterQuery<factory.creativeWork.movie.ICreativeWork>; $unset: any; }): Promise<import("mongoose").UpdateWriteOpResult>; } export {};