X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=server%2Ftypes%2Fplugins%2Fregister-server-auth.model.ts;h=e10968c20f507be8404182eac8f971e169d1b366;hb=60b880acdfa85eab5c9ec09ba1283f82ae58ec85;hp=79c18c406c93c4c69629689bba9d0010cbf37ca1;hpb=41fb13c330de629df2d23379209e79c7af0f2e9a;p=github%2FChocobozzz%2FPeerTube.git diff --git a/server/types/plugins/register-server-auth.model.ts b/server/types/plugins/register-server-auth.model.ts index 79c18c406..e10968c20 100644 --- a/server/types/plugins/register-server-auth.model.ts +++ b/server/types/plugins/register-server-auth.model.ts @@ -1,14 +1,33 @@ import express from 'express' -import { UserRole } from '@shared/models' +import { UserAdminFlag, UserRole } from '@shared/models' import { MOAuthToken, MUser } from '../models' export type RegisterServerAuthOptions = RegisterServerAuthPassOptions | RegisterServerAuthExternalOptions +export type AuthenticatedResultUpdaterFieldName = 'displayName' | 'role' | 'adminFlags' | 'videoQuota' | 'videoQuotaDaily' + export interface RegisterServerAuthenticatedResult { + // Update the user profile if it already exists + // Default behaviour is no update + // Introduced in PeerTube >= 5.1 + userUpdater?: (options: { + fieldName: AuthenticatedResultUpdaterFieldName + currentValue: T + newValue: T + }) => T + username: string email: string role?: UserRole displayName?: string + + // PeerTube >= 5.1 + adminFlags?: UserAdminFlag + + // PeerTube >= 5.1 + videoQuota?: number + // PeerTube >= 5.1 + videoQuotaDaily?: number } export interface RegisterServerExternalAuthenticatedResult extends RegisterServerAuthenticatedResult {