Files
sendico/api/pkg/mutil/helpers/accountmanager.go
2026-01-31 00:26:42 +01:00

23 lines
811 B
Go

package helpers
import (
"context"
"go.mongodb.org/mongo-driver/v2/bson"
)
// AccountManager defines the interface for account management operations
type AccountManager interface {
// DeleteOrganization deletes an organization and all its associated data
// The caller is responsible for wrapping this in a transaction
DeleteOrganization(ctx context.Context, orgRef bson.ObjectID) error
// DeleteAccount deletes an account and all its associated data
// The caller is responsible for wrapping this in a transaction
DeleteAccount(ctx context.Context, accountRef bson.ObjectID) error
// DeleteAll deletes all data for a given account and organization
// The caller is responsible for wrapping this in a transaction
DeleteAll(ctx context.Context, accountRef, organizationRef bson.ObjectID) error
}