aboutsummaryrefslogtreecommitdiff
path: root/internal/db/client.go
diff options
context:
space:
mode:
Diffstat (limited to 'internal/db/client.go')
-rw-r--r--internal/db/client.go18
1 files changed, 18 insertions, 0 deletions
diff --git a/internal/db/client.go b/internal/db/client.go
new file mode 100644
index 0000000..ce3bb2b
--- /dev/null
+++ b/internal/db/client.go
@@ -0,0 +1,18 @@
+package db
+
+import (
+ "context"
+
+ "git.sigsum.org/sigsum-go/pkg/requests"
+ "git.sigsum.org/sigsum-go/pkg/types"
+)
+
+// Client is an interface that interacts with a log's database backend
+type Client interface {
+ AddLeaf(context.Context, *requests.Leaf, uint64) (bool, error)
+ AddSequencedLeaves(ctx context.Context, leaves types.Leaves, index int64) error
+ GetTreeHead(context.Context) (*types.TreeHead, error)
+ GetConsistencyProof(context.Context, *requests.ConsistencyProof) (*types.ConsistencyProof, error)
+ GetInclusionProof(context.Context, *requests.InclusionProof) (*types.InclusionProof, error)
+ GetLeaves(context.Context, *requests.Leaves) (*types.Leaves, error)
+}