Files
TREK/server-nest/src/models/entities/auth/OauthAccessToken.ts
T
2026-04-26 23:22:06 +02:00

58 lines
1.7 KiB
TypeScript

/**
* AUTOGENERATED
*/
import { Column, Entity, JoinColumn, ManyToOne, PrimaryColumn } from 'typeorm';
import { OauthClient } from './OauthClient';
import { OauthRefreshToken } from './OauthRefreshToken';
import { Session } from './Session';
import { User } from './User';
@Entity('oauthAccessToken')
export class OauthAccessToken {
@PrimaryColumn('text')
id: string;
@Column('text', { name: 'token', nullable: true, unique: true })
token: string | null;
@Column('text', { name: 'clientId' })
clientId: string;
@ManyToOne(() => OauthClient, { onDelete: 'CASCADE', nullable: false })
@JoinColumn({ name: 'clientId', referencedColumnName: 'clientId' })
client: OauthClient;
@Column('text', { name: 'sessionId', nullable: true })
sessionId: string | null;
@ManyToOne(() => Session, { onDelete: 'SET NULL', nullable: true })
@JoinColumn({ name: 'sessionId', referencedColumnName: 'id' })
session?: Session;
@Column('text', { name: 'userId', nullable: true })
userId: string | null;
@ManyToOne(() => User, { onDelete: 'CASCADE', nullable: true })
@JoinColumn({ name: 'userId', referencedColumnName: 'id' })
user?: User;
@Column('text', { name: 'referenceId', nullable: true })
referenceId: string | null;
@Column('text', { name: 'refreshId', nullable: true })
refreshId: string | null;
@ManyToOne(() => OauthRefreshToken, { onDelete: 'CASCADE', nullable: true })
@JoinColumn({ name: 'refreshId', referencedColumnName: 'id' })
refresh?: OauthRefreshToken;
@Column({ type: 'timestamp', name: 'expiresAt', nullable: true })
expiresAt: Date | null;
@Column({ type: 'timestamp', name: 'createdAt', nullable: true })
createdAt: Date | null;
@Column('text', { name: 'scopes' })
scopes: string;
}