Auth Storage Adapter
Classes
Classes
AuthStorageAdapter
Constructor
constructor(config: AuthStorageAdapterConfig)
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
config | AuthStorageAdapterConfig | Yes |
Methods
updateR2Binding
Update the R2 binding for the storage adapter This allows dynamic injection of R2 binding at runtime
updateR2Binding(r2Binding: any): void
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
r2Binding | any | Yes |
createUser
Create a new user
createUser(user: Omit<AdapterUser, "id">): Promise<AdapterUser>
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
user | Omit<AdapterUser, "id"> | Yes |
Returns:
Promise<AdapterUser> -
getUser
Get user by ID
getUser(id: string): Promise<AdapterUser | null>
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
id | string | Yes |
Returns:
Promise<AdapterUser \| null> -
getUserByEmail
Get user by email
getUserByEmail(email: string): Promise<AdapterUser | null>
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
email | string | Yes |
Returns:
Promise<AdapterUser \| null> -
getUserByAccount
Get user by account (provider + providerAccountId)
getUserByAccount({
provider,
providerAccountId,
}: Pick<AdapterAccount, "provider" | "providerAccountId">): Promise<AdapterUser | null>
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
| `{ |
provider, providerAccountId, }|Pick<AdapterAccount, "provider" | "providerAccountId">` | Yes | |
Returns:
Promise<AdapterUser \| null> -
updateUser
Update user
updateUser(user: Partial<AdapterUser> & Pick<AdapterUser, "id">): Promise<AdapterUser>
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
user | Partial<AdapterUser> & Pick<AdapterUser, "id"> | Yes |
Returns:
Promise<AdapterUser> -
deleteUser
Delete user
deleteUser(userId: string): Promise<void>
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
userId | string | Yes |
Returns:
Promise<void> -
linkAccount
Link account to user
linkAccount(account: AdapterAccount): Promise<void>
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
account | AdapterAccount | Yes |
Returns:
Promise<void> -
unlinkAccount
Unlink account
unlinkAccount({
provider,
providerAccountId,
}: Pick<AdapterAccount, "provider" | "providerAccountId">): Promise<void>
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
| `{ |
provider, providerAccountId, }|Pick<AdapterAccount, "provider" | "providerAccountId">` | Yes | |
Returns:
Promise<void> -
getAccount
Get account by provider account id and provider
getAccount(providerAccountId: string, provider: string): Promise<AdapterAccount | null>
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
providerAccountId | string | Yes | |
provider | string | Yes |
Returns:
Promise<AdapterAccount \| null> -
createSession
Create session
createSession(session: { sessionToken: string; userId: string; expires: Date; }): Promise<AdapterSession>
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
session | { sessionToken: string; userId: string; expires: Date; } | Yes |
Returns:
Promise<AdapterSession> -
getSessionAndUser
Get session and user
getSessionAndUser(sessionToken: string): Promise<{ session: AdapterSession; user: AdapterUser; } | null>
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
sessionToken | string | Yes |
Returns:
Promise<{ session: AdapterSession; user: AdapterUser; } \| null> -
updateSession
Update session
updateSession(session: Partial<AdapterSession> & Pick<AdapterSession, "sessionToken">): Promise<AdapterSession | null>
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
session | Partial<AdapterSession> & Pick<AdapterSession, "sessionToken"> | Yes |
Returns:
Promise<AdapterSession \| null> -
deleteSession
Delete session
deleteSession(sessionToken: string): Promise<void>
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
sessionToken | string | Yes |
Returns:
Promise<void> -
createVerificationToken
Create verification token
createVerificationToken(verificationToken: VerificationToken): Promise<VerificationToken | null>
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
verificationToken | VerificationToken | Yes |
Returns:
Promise<VerificationToken \| null> -
useVerificationToken
Use verification token (consume and delete)
useVerificationToken({
identifier,
token,
}: { identifier: string; token: string; }): Promise<VerificationToken | null>
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
| `{ |
identifier, token, }|{ identifier: string; token: string; }` | Yes | |
Returns:
Promise<VerificationToken \| null> -
createAuthenticator
Create authenticator
createAuthenticator(authenticator: AdapterAuthenticator): Promise<AdapterAuthenticator>
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
authenticator | AdapterAuthenticator | Yes |
Returns:
Promise<AdapterAuthenticator> -
listAuthenticatorsByUserId
Get authenticators for user
listAuthenticatorsByUserId(userId: string): Promise<AdapterAuthenticator[]>
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
userId | string | Yes |
Returns:
Promise<AdapterAuthenticator[]> -
getAuthenticator
Get authenticator by credential ID
getAuthenticator(credentialID: string): Promise<AdapterAuthenticator | null>
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
credentialID | string | Yes |
Returns:
Promise<AdapterAuthenticator \| null> -
updateAuthenticatorCounter
Update authenticator counter
updateAuthenticatorCounter(credentialID: string, counter: number): Promise<AdapterAuthenticator>
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
credentialID | string | Yes | |
counter | number | Yes |
Returns:
Promise<AdapterAuthenticator> -
BaseStorageAdapter
Base storage adapter interface
Methods
createDocument
createDocument(domainId: string, collectionName: string, version: number, doc: SyncDoc): Promise<SyncDoc>
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
domainId | string | Yes | |
collectionName | string | Yes | |
version | number | Yes | |
doc | SyncDoc | Yes |
Returns:
Promise<SyncDoc> -
queryDocument
queryDocument(domainId: string, collectionName: string, version: number, id: string): Promise<SyncDoc | null>
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
domainId | string | Yes | |
collectionName | string | Yes | |
version | number | Yes | |
id | string | Yes |
Returns:
Promise<SyncDoc \| null> -
updateDocument
updateDocument(domainId: string, collectionName: string, version: number, doc: SyncDoc): Promise<SyncDoc>
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
domainId | string | Yes | |
collectionName | string | Yes | |
version | number | Yes | |
doc | SyncDoc | Yes |
Returns:
Promise<SyncDoc> -
deleteDocument
deleteDocument(domainId: string, collectionName: string, version: number, id: string): Promise<void>
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
domainId | string | Yes | |
collectionName | string | Yes | |
version | number | Yes | |
id | string | Yes |
Returns:
Promise<void> -
queryDocumentsByField
queryDocumentsByField(options: QueryByFieldOptions): Promise<SyncDoc[]>
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
options | QueryByFieldOptions | Yes |
Returns:
Promise<SyncDoc[]> -
queryDocumentsByConditions
queryDocumentsByConditions(options: QueryByConditionsOptions): Promise<SyncDoc[]>
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
options | QueryByConditionsOptions | Yes |
Returns:
Promise<SyncDoc[]> -
deleteDocumentsByField
deleteDocumentsByField(options: DeleteByFieldOptions): Promise<void>
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
options | DeleteByFieldOptions | Yes |
Returns:
Promise<void> -
findAndDeleteDocument
findAndDeleteDocument(options: FindAndDeleteOptions): Promise<SyncDoc | null>
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
options | FindAndDeleteOptions | Yes |
Returns:
Promise<SyncDoc \| null> -
RemoteStorageAdapter
Remote storage adapter implementation (stub) This is a placeholder that throws errors - should be implemented with actual storage logic
Constructor
constructor(config: RemoteStorageConfig)
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
config | RemoteStorageConfig | Yes |
Methods
createDocument
createDocument(domainId: string, collectionName: string, version: number, doc: SyncDoc): Promise<SyncDoc>
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
domainId | string | Yes | |
collectionName | string | Yes | |
version | number | Yes | |
doc | SyncDoc | Yes |
Returns:
Promise<SyncDoc> -
queryDocument
queryDocument(domainId: string, collectionName: string, version: number, id: string): Promise<SyncDoc | null>
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
domainId | string | Yes | |
collectionName | string | Yes | |
version | number | Yes | |
id | string | Yes |
Returns:
Promise<SyncDoc \| null> -
updateDocument
updateDocument(domainId: string, collectionName: string, version: number, doc: SyncDoc): Promise<SyncDoc>
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
domainId | string | Yes | |
collectionName | string | Yes | |
version | number | Yes | |
doc | SyncDoc | Yes |
Returns:
Promise<SyncDoc> -
deleteDocument
deleteDocument(domainId: string, collectionName: string, version: number, id: string): Promise<void>
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
domainId | string | Yes | |
collectionName | string | Yes | |
version | number | Yes | |
id | string | Yes |
Returns:
Promise<void> -
queryDocumentsByField
queryDocumentsByField(options: QueryByFieldOptions): Promise<SyncDoc[]>
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
options | QueryByFieldOptions | Yes |
Returns:
Promise<SyncDoc[]> -
queryDocumentsByConditions
queryDocumentsByConditions(options: QueryByConditionsOptions): Promise<SyncDoc[]>
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
options | QueryByConditionsOptions | Yes |
Returns:
Promise<SyncDoc[]> -
deleteDocumentsByField
deleteDocumentsByField(options: DeleteByFieldOptions): Promise<void>
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
options | DeleteByFieldOptions | Yes |
Returns:
Promise<void> -
findAndDeleteDocument
findAndDeleteDocument(options: FindAndDeleteOptions): Promise<SyncDoc | null>
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
options | FindAndDeleteOptions | Yes |
Returns:
Promise<SyncDoc \| null> -