import { DynamoDBDocumentClient } from "@aws-sdk/lib-dynamodb"; import { DataAdapters } from "@authhero/adapter-interfaces"; import { DynamoDBConfig } from "./types"; export type { DynamoDBConfig, DynamoDBContext } from "./types"; export { createProxyRoutesAdapter } from "./adapters/proxyRoutes"; export { createProxyDataAdapter } from "./adapters/proxyData"; /** * Create all DynamoDB adapters for AuthHero * * @param client - DynamoDB Document Client instance * @param config - Configuration options including table name * @returns DataAdapters object with all adapter implementations * * @example * ```typescript * import { DynamoDBClient } from "@aws-sdk/client-dynamodb"; * import { DynamoDBDocumentClient } from "@aws-sdk/lib-dynamodb"; * import createAdapters from "@authhero/aws-adapter"; * * const client = new DynamoDBClient({}); * const docClient = DynamoDBDocumentClient.from(client); * * const adapters = createAdapters(docClient, { * tableName: "authhero", * }); * ``` */ export default function createAdapters(client: DynamoDBDocumentClient, config: DynamoDBConfig): DataAdapters; export { createActionsAdapter } from "./adapters/actions"; export { createActionExecutionsAdapter } from "./adapters/actionExecutions"; export { createActionVersionsAdapter } from "./adapters/actionVersions"; export { createTenantsAdapter } from "./adapters/tenants"; export { createUsersAdapter } from "./adapters/users"; export { createSessionsAdapter } from "./adapters/sessions"; export { createPasswordsAdapter } from "./adapters/passwords"; export { createCodesAdapter } from "./adapters/codes"; export { createClientsAdapter } from "./adapters/clients"; export { createClientGrantsAdapter } from "./adapters/clientGrants"; export { createClientConnectionsAdapter } from "./adapters/clientConnections"; export { createConnectionsAdapter } from "./adapters/connections"; export { createLoginSessionsAdapter } from "./adapters/loginSessions"; export { createBrandingAdapter } from "./adapters/branding"; export { createHooksAdapter } from "./adapters/hooks"; export { createKeysAdapter } from "./adapters/keys"; export { createCustomDomainsAdapter } from "./adapters/customDomains"; export { createLogsAdapter } from "./adapters/logs"; export { createThemesAdapter } from "./adapters/themes"; export { createPromptSettingsAdapter } from "./adapters/promptSettings"; export { createEmailProvidersAdapter } from "./adapters/emailProviders"; export { createRefreshTokensAdapter } from "./adapters/refreshTokens"; export { createFormsAdapter } from "./adapters/forms"; export { createResourceServersAdapter } from "./adapters/resourceServers"; export { createRolesAdapter } from "./adapters/roles"; export { createRolePermissionsAdapter } from "./adapters/rolePermissions"; export { createUserPermissionsAdapter } from "./adapters/userPermissions"; export { createUserRolesAdapter } from "./adapters/userRoles"; export { createOrganizationsAdapter } from "./adapters/organizations"; export { createOrganizationConnectionsAdapter } from "./adapters/organizationConnections"; export { createUserOrganizationsAdapter } from "./adapters/userOrganizations"; export { createInvitesAdapter } from "./adapters/invites"; export { createFlowsAdapter } from "./adapters/flows"; export { createAuthenticationMethodsAdapter } from "./adapters/authenticationMethods"; export * from "./keys"; export * from "./utils";