mirror of
https://github.com/steveiliop56/tinyauth.git
synced 2026-05-03 02:48:11 +00:00
42 lines
2.2 KiB
Go
42 lines
2.2 KiB
Go
package repository
|
|
|
|
import "context"
|
|
|
|
// Store is the interface that all storage drivers must implement.
|
|
// The sqlc-generated *Queries struct satisfies this interface for SQLite.
|
|
// Future drivers (postgres, etc.) must return the shared types defined in this package.
|
|
type Store interface {
|
|
// Sessions
|
|
CreateSession(ctx context.Context, arg CreateSessionParams) (Session, error)
|
|
GetSession(ctx context.Context, uuid string) (Session, error)
|
|
UpdateSession(ctx context.Context, arg UpdateSessionParams) (Session, error)
|
|
DeleteSession(ctx context.Context, uuid string) error
|
|
DeleteExpiredSessions(ctx context.Context, expiry int64) error
|
|
|
|
// OIDC codes
|
|
CreateOidcCode(ctx context.Context, arg CreateOidcCodeParams) (OidcCode, error)
|
|
GetOidcCode(ctx context.Context, codeHash string) (OidcCode, error)
|
|
GetOidcCodeBySub(ctx context.Context, sub string) (OidcCode, error)
|
|
GetOidcCodeUnsafe(ctx context.Context, codeHash string) (OidcCode, error)
|
|
GetOidcCodeBySubUnsafe(ctx context.Context, sub string) (OidcCode, error)
|
|
DeleteOidcCode(ctx context.Context, codeHash string) error
|
|
DeleteOidcCodeBySub(ctx context.Context, sub string) error
|
|
DeleteExpiredOidcCodes(ctx context.Context, expiresAt int64) ([]OidcCode, error)
|
|
|
|
// OIDC tokens
|
|
CreateOidcToken(ctx context.Context, arg CreateOidcTokenParams) (OidcToken, error)
|
|
GetOidcToken(ctx context.Context, accessTokenHash string) (OidcToken, error)
|
|
GetOidcTokenByRefreshToken(ctx context.Context, refreshTokenHash string) (OidcToken, error)
|
|
GetOidcTokenBySub(ctx context.Context, sub string) (OidcToken, error)
|
|
UpdateOidcTokenByRefreshToken(ctx context.Context, arg UpdateOidcTokenByRefreshTokenParams) (OidcToken, error)
|
|
DeleteOidcToken(ctx context.Context, accessTokenHash string) error
|
|
DeleteOidcTokenBySub(ctx context.Context, sub string) error
|
|
DeleteOidcTokenByCodeHash(ctx context.Context, codeHash string) error
|
|
DeleteExpiredOidcTokens(ctx context.Context, arg DeleteExpiredOidcTokensParams) ([]OidcToken, error)
|
|
|
|
// OIDC userinfo
|
|
CreateOidcUserInfo(ctx context.Context, arg CreateOidcUserInfoParams) (OidcUserinfo, error)
|
|
GetOidcUserInfo(ctx context.Context, sub string) (OidcUserinfo, error)
|
|
DeleteOidcUserInfo(ctx context.Context, sub string) error
|
|
}
|