UNPKG

@chevre/domain

Version:

Chevre Domain Library for Node.js

62 lines (61 loc) 2.27 kB
import { Connection, FilterQuery, QueryOptions } from 'mongoose'; import * as factory from '../factory'; export type ISavingIdentityProvider = Pick<factory.identityProvider.IIdentityProvider, 'identifier' | 'project' | 'typeOf'> & { id?: never; }; interface IUnset { $unset?: { [key: string]: 1; }; } type IIdentityProviderWithId = factory.identityProvider.IIdentityProvider & { id: string; }; type IKeyOfProjection = keyof factory.identityProvider.IIdentityProvider; /** * IDPリポジトリ */ export declare class IdentityProviderRepo { private readonly identityProviderModel; constructor(connection: Connection); static CREATE_FILTER_QUERY(params: factory.identityProvider.ISearchConditions): FilterQuery<factory.identityProvider.IIdentityProvider>[]; save(params: { id?: string; attributes: ISavingIdentityProvider & IUnset; }): Promise<{ id: string; }>; projectFields(conditions: factory.identityProvider.ISearchConditions, inclusion: IKeyOfProjection[]): Promise<IIdentityProviderWithId[]>; deleteById(params: { id: string; project: { id: string; }; }): Promise<void>; getCursor(conditions: any, projection: any): import("mongoose").Cursor<import("mongoose").Document<unknown, {}, { identifier: string; project: Pick<factory.project.IProject, "id" | "typeOf">; typeOf: factory.organizationType.Organization; }> & { identifier: string; project: Pick<factory.project.IProject, "id" | "typeOf">; typeOf: factory.organizationType.Organization; } & { _id: import("mongoose").Types.ObjectId; }, QueryOptions<import("mongoose").Document<unknown, {}, { identifier: string; project: Pick<factory.project.IProject, "id" | "typeOf">; typeOf: factory.organizationType.Organization; }> & { identifier: string; project: Pick<factory.project.IProject, "id" | "typeOf">; typeOf: factory.organizationType.Organization; } & { _id: import("mongoose").Types.ObjectId; }>>; unsetUnnecessaryFields(params: { filter: any; $unset: any; }): Promise<import("mongoose").UpdateWriteOpResult>; } export {};