import { Action } from '@ngrx/store'; import { RPCClientError } from '@loafer/ng-rpc'; import { Probe } from '@overflow/commons-typescript/model/probe'; export enum ActionType { Remove = '[probe.remove] Remove', RemoveSuccess = '[probe.detail] RemoveSuccess', RemoveFailure = '[probe.detail] RemoveFailure', } export class Remove implements Action { readonly type = ActionType.Remove; constructor(public payload: {id: string}) {} } export class RemoveSuccess implements Action { readonly type = ActionType.RemoveSuccess; constructor(public payload: boolean) {} } export class RemoveFailure implements Action { readonly type = ActionType.RemoveFailure; constructor(public payload: RPCClientError) {} } export type Actions = | Remove | RemoveSuccess | RemoveFailure ;