// Code generated by sqlc. DO NOT EDIT. // versions: // sqlc v1.30.0 // source: auth.sql package repository import ( "context" "github.com/google/uuid" "github.com/jackc/pgx/v5/pgtype" ) const createRefreshToken = `-- name: CreateRefreshToken :one INSERT INTO refresh_tokens (user_id, token, expires_at) VALUES ($1, $2, $3) RETURNING id, user_id, token, expires_at, created_at ` type CreateRefreshTokenParams struct { UserID uuid.UUID Token string ExpiresAt pgtype.Timestamptz } func (q *Queries) CreateRefreshToken(ctx context.Context, arg CreateRefreshTokenParams) (RefreshToken, error) { row := q.db.QueryRow(ctx, createRefreshToken, arg.UserID, arg.Token, arg.ExpiresAt) var i RefreshToken err := row.Scan( &i.ID, &i.UserID, &i.Token, &i.ExpiresAt, &i.CreatedAt, ) return i, err } const createUser = `-- name: CreateUser :exec INSERT INTO users (email, password_hash) VALUES ($1, $2) ` type CreateUserParams struct { Email string PasswordHash string } func (q *Queries) CreateUser(ctx context.Context, arg CreateUserParams) error { _, err := q.db.Exec(ctx, createUser, arg.Email, arg.PasswordHash) return err } const deleteExpiredRefreshTokens = `-- name: DeleteExpiredRefreshTokens :exec DELETE FROM refresh_tokens WHERE expires_at < now() ` func (q *Queries) DeleteExpiredRefreshTokens(ctx context.Context) error { _, err := q.db.Exec(ctx, deleteExpiredRefreshTokens) return err } const deleteRefreshToken = `-- name: DeleteRefreshToken :exec DELETE FROM refresh_tokens WHERE token = $1 ` func (q *Queries) DeleteRefreshToken(ctx context.Context, token string) error { _, err := q.db.Exec(ctx, deleteRefreshToken, token) return err } const deleteUserRefreshTokens = `-- name: DeleteUserRefreshTokens :exec DELETE FROM refresh_tokens WHERE user_id = $1 ` func (q *Queries) DeleteUserRefreshTokens(ctx context.Context, userID uuid.UUID) error { _, err := q.db.Exec(ctx, deleteUserRefreshTokens, userID) return err } const getRefreshToken = `-- name: GetRefreshToken :one SELECT id, user_id, token, expires_at, created_at FROM refresh_tokens WHERE token = $1 LIMIT 1 ` func (q *Queries) GetRefreshToken(ctx context.Context, token string) (RefreshToken, error) { row := q.db.QueryRow(ctx, getRefreshToken, token) var i RefreshToken err := row.Scan( &i.ID, &i.UserID, &i.Token, &i.ExpiresAt, &i.CreatedAt, ) return i, err } const getUserByEmail = `-- name: GetUserByEmail :one SELECT id, email, password_hash, created_at, updated_at FROM users WHERE email = $1 LIMIT 1 ` func (q *Queries) GetUserByEmail(ctx context.Context, email string) (User, error) { row := q.db.QueryRow(ctx, getUserByEmail, email) var i User err := row.Scan( &i.ID, &i.Email, &i.PasswordHash, &i.CreatedAt, &i.UpdatedAt, ) return i, err } const getUserByID = `-- name: GetUserByID :one SELECT id, email, password_hash, created_at, updated_at FROM users WHERE id = $1 LIMIT 1 ` func (q *Queries) GetUserByID(ctx context.Context, id uuid.UUID) (User, error) { row := q.db.QueryRow(ctx, getUserByID, id) var i User err := row.Scan( &i.ID, &i.Email, &i.PasswordHash, &i.CreatedAt, &i.UpdatedAt, ) return i, err } const updateUserPassword = `-- name: UpdateUserPassword :one UPDATE users SET password_hash = $2, updated_at = now() WHERE id = $1 RETURNING id, email, password_hash, created_at, updated_at ` type UpdateUserPasswordParams struct { ID uuid.UUID PasswordHash string } func (q *Queries) UpdateUserPassword(ctx context.Context, arg UpdateUserPasswordParams) (User, error) { row := q.db.QueryRow(ctx, updateUserPassword, arg.ID, arg.PasswordHash) var i User err := row.Scan( &i.ID, &i.Email, &i.PasswordHash, &i.CreatedAt, &i.UpdatedAt, ) return i, err }