UNPKG

@chevre/domain

Version:

Chevre Domain Library for Node.js

79 lines (78 loc) 2.99 kB
import type { Connection, FilterQuery } from 'mongoose'; import * as factory from '../factory'; type IKeyOfProjection = keyof factory.project.IProject; /** * プロジェクトリポジトリ * makesOfferについてはsee ProjectMakesOfferRepo */ export declare class ProjectRepo { private readonly projectModel; constructor(connection: Connection); static CREATE_MONGO_CONDITIONS(params: factory.project.ISearchConditions): FilterQuery<factory.project.IProject>[]; findById(params: { id: string; inclusion: IKeyOfProjection[]; }): Promise<factory.project.IProject>; findAlternateNameById(params: { id: string; }): Promise<Pick<factory.project.IProject, 'alternateName'>>; /** * プロジェクト検索 */ projectFields(conditions: factory.project.ISearchConditions, inclusion: IKeyOfProjection[]): Promise<factory.project.IProject[]>; createById(params: factory.project.IProject): Promise<Pick<factory.project.IProject, 'id'>>; updateById(params: { id: string; alternateName?: string; logo?: string; hasMerchantReturnPolicy?: Pick<factory.project.IHasMerchantReturnPolicy, 'sameAs' | 'identifier'>; name?: string; settings?: { sendEmailMessage?: factory.project.ISendEmailMessageSettings; sendgridApiKey?: string; }; subscription?: { useEventServiceAsProduct?: boolean; }; }): Promise<void>; updateMakesOfferById(params: { id: string; makesOffer: factory.project.IMakesOffer[]; }): Promise<void>; activateOptionalAggregationSettings(params: { id: string; }): Promise<void>; updateAggregateReservation(params: { id: string; aggregateReservation?: any; }): Promise<void>; deleteById(params: { id: string; }): Promise<void>; getCursor(conditions: FilterQuery<factory.project.IProject>, projection: any): import("mongoose").Cursor<import("mongoose").Document<unknown, {}, Omit<factory.project.IProject, "id"> & { _id: string; aggregateReservation?: any; makesOffer?: factory.project.IMakesOffer[]; }> & Omit<factory.project.IProject, "id"> & { _id: string; aggregateReservation?: any; makesOffer?: factory.project.IMakesOffer[]; } & Required<{ _id: string; }>, import("mongoose").QueryOptions<import("mongoose").Document<unknown, {}, Omit<factory.project.IProject, "id"> & { _id: string; aggregateReservation?: any; makesOffer?: factory.project.IMakesOffer[]; }> & Omit<factory.project.IProject, "id"> & { _id: string; aggregateReservation?: any; makesOffer?: factory.project.IMakesOffer[]; } & Required<{ _id: string; }>>>; unsetUnnecessaryFields(params: { filter: any; $unset: any; }): Promise<import("mongoose").UpdateWriteOpResult>; } export {};