Files
sendico/api/pkg/db/invitation/invitation.go
2026-01-31 00:26:42 +01:00

20 lines
766 B
Go

package invitation
import (
"context"
"github.com/tech/sendico/pkg/auth"
"github.com/tech/sendico/pkg/model"
"go.mongodb.org/mongo-driver/v2/bson"
)
type DB interface {
auth.ProtectedDB[*model.Invitation]
GetPublic(ctx context.Context, invitationRef bson.ObjectID) (*model.PublicInvitation, error)
Accept(ctx context.Context, invitationRef bson.ObjectID) error
Decline(ctx context.Context, invitationRef bson.ObjectID) error
List(ctx context.Context, accountRef, organizationRef, _ bson.ObjectID, cursor *model.ViewCursor) ([]model.Invitation, error)
DeleteCascade(ctx context.Context, accountRef, statusRef bson.ObjectID) error
SetArchived(ctx context.Context, accountRef, organizationRef, invitationRef bson.ObjectID, archived, cascade bool) error
}