implemented verifiaction db
This commit is contained in:
28
api/pkg/db/verification/verification.go
Normal file
28
api/pkg/db/verification/verification.go
Normal file
@@ -0,0 +1,28 @@
|
||||
package verification
|
||||
|
||||
import (
|
||||
"context"
|
||||
"errors"
|
||||
"time"
|
||||
|
||||
"github.com/tech/sendico/pkg/model"
|
||||
"go.mongodb.org/mongo-driver/v2/bson"
|
||||
)
|
||||
|
||||
var (
|
||||
ErrTokenNotFound = errors.New("verification token not found")
|
||||
ErrTokenAlreadyUsed = errors.New("verification token already used")
|
||||
ErrTokenExpired = errors.New("verification token expired")
|
||||
)
|
||||
|
||||
type DB interface {
|
||||
// template.DB[*model.VerificationToken]
|
||||
Create(
|
||||
ctx context.Context,
|
||||
accountRef bson.ObjectID,
|
||||
purpose model.VerificationPurpose,
|
||||
target string,
|
||||
ttl time.Duration,
|
||||
) (rawToken string, err error)
|
||||
Consume(ctx context.Context, rawToken string) (*model.VerificationToken, error)
|
||||
}
|
||||
Reference in New Issue
Block a user