UNPKG

@chevre/domain

Version:

Chevre Domain Library for Node.js

46 lines (45 loc) 1.28 kB
import { Connection } from 'mongoose'; import * as factory from '../factory'; import ActionModel from './mongoose/model/action'; export declare type IAction<T extends factory.actionType> = factory.action.IAction<factory.action.IAttributes<T, any, any>>; /** * アクションリポジトリー */ export declare class MongoRepository { readonly actionModel: typeof ActionModel; constructor(connection: Connection); /** * アクション開始 */ start<T extends factory.actionType>(attributes: factory.action.IAttributes<T, any, any>): Promise<IAction<T>>; /** * アクション完了 */ complete<T extends factory.actionType>(params: { typeOf: T; id: string; result: any; }): Promise<IAction<T>>; /** * アクション取消 */ cancel<T extends factory.actionType>(params: { typeOf: T; id: string; }): Promise<IAction<T>>; /** * アクション失敗 */ giveUp<T extends factory.actionType>(params: { typeOf: T; id: string; error: any; }): Promise<IAction<T>>; /** * IDで取得する */ findById<T extends factory.actionType>(params: { typeOf: T; id: string; }): Promise<IAction<T>>; }