30 lines
1.2 KiB
C#
30 lines
1.2 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using xModels.Base;
|
|
|
|
namespace xModels.Interfaces
|
|
{
|
|
public interface IXBaseStoreEvents<T, TKey> where T : XBaseStorableDto<TKey>
|
|
{
|
|
//
|
|
void AddEvent(XBaseStorableDtoEventModel<T> model);
|
|
void UpdateEvent(XBaseStorableDtoEventModel<T> model);
|
|
void RemoveEvent(XBaseStorableDtoEventModel<T> model);
|
|
|
|
//
|
|
void AddManyEvent(XBaseStorableDtoEventModel<IEnumerable<T>> model);
|
|
void UpdateManyEvent(XBaseStorableDtoEventModel<IEnumerable<T>> model);
|
|
void RemoveManyEvent(XBaseStorableDtoEventModel<IEnumerable<T>> model);
|
|
|
|
//
|
|
IObservable<XBaseStorableDtoEventModel<T>> OnAddObservable { get; }
|
|
IObservable<XBaseStorableDtoEventModel<T>> OnUpdateObservable { get; }
|
|
IObservable<XBaseStorableDtoEventModel<T>> OnRemoveObservable { get; }
|
|
|
|
//
|
|
IObservable<XBaseStorableDtoEventModel<IEnumerable<T>>> OnAddManyObservable { get; }
|
|
IObservable<XBaseStorableDtoEventModel<IEnumerable<T>>> OnUpdateManyObservable { get; }
|
|
IObservable<XBaseStorableDtoEventModel<IEnumerable<T>>> OnRemoveManyObservable { get; }
|
|
|
|
}
|
|
} |