-import * as Sequelize from 'sequelize'
-
-import { logger } from '../../helpers'
-
-import { addMethodsToModel } from '../utils'
-import { OAuthTokenAttributes, OAuthTokenInfo, OAuthTokenInstance, OAuthTokenMethods } from './oauth-token-interface'
+import { Transaction } from 'sequelize'
+import {
+ AfterDestroy,
+ AfterUpdate,
+ AllowNull,
+ BelongsTo,
+ Column,
+ CreatedAt,
+ ForeignKey,
+ Model,
+ Scopes,
+ Table,
+ UpdatedAt
+} from 'sequelize-typescript'
+import { TokensCache } from '@server/lib/auth/tokens-cache'
+import { MUserAccountId } from '@server/types/models'
+import { MOAuthTokenUser } from '@server/types/models/oauth/oauth-token'
+import { AttributesOnly } from '@shared/typescript-utils'
+import { logger } from '../../helpers/logger'
+import { AccountModel } from '../account/account'
+import { ActorModel } from '../actor/actor'
+import { UserModel } from '../user/user'
+import { OAuthClientModel } from './oauth-client'
+
+export type OAuthTokenInfo = {
+ refreshToken: string
+ refreshTokenExpiresAt: Date
+ client: {
+ id: number
+ }
+ user: MUserAccountId
+ token: MOAuthTokenUser
+}