db

package
v0.0.0-...-2eaac6a Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 1, 2026 License: AGPL-3.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewConnection

func NewConnection(cfg config.DatabaseConfig) (*pgxpool.Pool, error)

Types

type CreateUserParams

type CreateUserParams struct {
	Email                   string
	EmailHash               []byte
	Username                string
	Salt                    []byte
	AuthVerifier            []byte
	IdentityPublicKey       []byte
	EncIdentityPrivateKey   []byte
	IdentityPrivateKeyNonce []byte
	VaultPublicKey          []byte
	EncVaultPrivateKey      []byte
	VaultPrivateKeyNonce    []byte
}

type DBTX

type DBTX interface {
	Exec(context.Context, string, ...interface{}) (pgconn.CommandTag, error)
	Query(context.Context, string, ...interface{}) (pgx.Rows, error)
	QueryRow(context.Context, string, ...interface{}) pgx.Row
}

type LookupUserRow

type LookupUserRow struct {
	ID                uuid.UUID
	Username          string
	IdentityPublicKey []byte
	VaultPublicKey    []byte
}

type LookupUsersRow

type LookupUsersRow struct {
	ID                uuid.UUID
	Username          string
	IdentityPublicKey []byte
	VaultPublicKey    []byte
}

type Querier

type Querier interface {
	CreateUser(ctx context.Context, arg CreateUserParams) (User, error)
	GetSaltByEmail(ctx context.Context, email string) ([]byte, error)
	GetUserByEmail(ctx context.Context, email string) (User, error)
	GetUserById(ctx context.Context, id uuid.UUID) (User, error)
	LookupUser(ctx context.Context, emailHash []byte) (LookupUserRow, error)
	LookupUsers(ctx context.Context, dollar_1 []uuid.UUID) ([]LookupUsersRow, error)
}

type Queries

type Queries struct {
	// contains filtered or unexported fields
}

func New

func New(db DBTX) *Queries

func (*Queries) CreateUser

func (q *Queries) CreateUser(ctx context.Context, arg CreateUserParams) (User, error)

func (*Queries) GetSaltByEmail

func (q *Queries) GetSaltByEmail(ctx context.Context, email string) ([]byte, error)

func (*Queries) GetUserByEmail

func (q *Queries) GetUserByEmail(ctx context.Context, email string) (User, error)

func (*Queries) GetUserById

func (q *Queries) GetUserById(ctx context.Context, id uuid.UUID) (User, error)

func (*Queries) LookupUser

func (q *Queries) LookupUser(ctx context.Context, emailHash []byte) (LookupUserRow, error)

func (*Queries) LookupUsers

func (q *Queries) LookupUsers(ctx context.Context, dollar_1 []uuid.UUID) ([]LookupUsersRow, error)

func (*Queries) WithTx

func (q *Queries) WithTx(tx pgx.Tx) *Queries

type User

type User struct {
	ID                      uuid.UUID
	Email                   string
	EmailHash               []byte
	Username                string
	Salt                    []byte
	AuthVerifier            []byte
	IdentityPublicKey       []byte
	EncIdentityPrivateKey   []byte
	IdentityPrivateKeyNonce []byte
	VaultPublicKey          []byte
	EncVaultPrivateKey      []byte
	VaultPrivateKeyNonce    []byte
	CreatedAt               time.Time
	UpdatedAt               time.Time
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL