-
Notifications
You must be signed in to change notification settings - Fork 4
Expand file tree
/
Copy pathINonceAccountMappingStore.cs
More file actions
37 lines (33 loc) · 1.28 KB
/
INonceAccountMappingStore.cs
File metadata and controls
37 lines (33 loc) · 1.28 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
using Ost.Services.Store.Events;
using Ost.Services.Store.Models;
using Solnet.Wallet;
using System;
using System.Collections.Generic;
namespace Ost.Services
{
/// <summary>
/// Specifies functionality for a <see cref="NonceAccountMapping"/> store.
/// </summary>
public interface INonceAccountMappingStore
{
/// <summary>
/// Adds a <see cref="NonceAccountMapping"/> to the store.
/// </summary>
/// <param name="mapping">The mapping to add.</param>
void AddMapping(NonceAccountMapping mapping);
/// <summary>
/// Gets the first found <see cref="NonceAccountMapping"/> by it's authority.
/// </summary>
/// <param name="authority">The <see cref="PublicKey"/> of the <see cref="NonceAccount"/> authority.</param>
/// <returns>The <see cref="NonceAccountMapping"/>.</returns>
NonceAccountMapping GetMapping(PublicKey authority);
/// <summary>
/// The existing <see cref="NonceAccountMapping"/>s.
/// </summary>
List<NonceAccountMapping> NonceAccountMappings { get; }
/// <summary>
/// An event raised whenever the store state changes.
/// </summary>
event EventHandler<NonceAccountMappingStateChangedEventArgs> OnStateChanged;
}
}