// Code generated by sqlc. DO NOT EDIT.
// versions:
//   sqlc v1.31.1

package db

import (
	"context"

	"github.com/jackc/pgx/v5/pgtype"
)

type Querier interface {
	BindTag(ctx context.Context, arg BindTagParams) (Tag, error)
	ClearTagOwner(ctx context.Context, id int64) (Tag, error)
	CountTagsByOwner(ctx context.Context, ownerID pgtype.Int8) (int64, error)
	CreateUser(ctx context.Context, arg CreateUserParams) (User, error)
	GetLastAlertByTag(ctx context.Context, tagID int64) (Scan, error)
	GetLatestScanByTag(ctx context.Context, tagID int64) (Scan, error)
	GetTagByCode(ctx context.Context, tagCode string) (Tag, error)
	GetTagByID(ctx context.Context, id int64) (Tag, error)
	GetUserByEmail(ctx context.Context, email string) (User, error)
	GetUserByID(ctx context.Context, id int64) (User, error)
	InsertScan(ctx context.Context, arg InsertScanParams) (Scan, error)
	InsertTag(ctx context.Context, tagCode string) (Tag, error)
	ListTagsByOwner(ctx context.Context, ownerID pgtype.Int8) ([]Tag, error)
	SetScanAlertSent(ctx context.Context, arg SetScanAlertSentParams) error
	SetScanPhone(ctx context.Context, arg SetScanPhoneParams) error
	SetTagStatus(ctx context.Context, arg SetTagStatusParams) error
	UpdateTagDetails(ctx context.Context, arg UpdateTagDetailsParams) (Tag, error)
}

var _ Querier = (*Queries)(nil)
