plugin_options: TObject<
    {
        ajv: TOptional<TAny>;
        includeErrorDescription: TOptional<TBoolean>;
        isAccessTokenRevoked: TFunction<[TString], TPromise<TBoolean>>;
        logPrefix: TOptional<TString>;
        reportAllAjvErrors: TOptional<TBoolean>;
        requestContextKey: TOptional<TString>;
        retrieveUserProfile: TFunction<
            [TString],
            TPromise<
                TUnion<
                    [
                        TObject<
                            {
                                created_at: TNumber;
                                email: TOptional<TString>;
                                id: TUnion<[TNumber, TString]>;
                                name: TString;
                                photo: TString;
                                url: TString;
                            },
                        >,
                        TObject<
                            {
                                created_at: TUnion<[TNumber, TNull]>;
                                deleted_at: TOptional<TUnion<[(...), (...)]>>;
                                email: TOptional<TString>;
                                id: TUnion<[TNumber, TString]>;
                                name: TString;
                                photo: TString;
                                undeleted_at: TOptional<TUnion<[(...), (...)]>>;
                                updated_at: TOptional<TUnion<[(...), (...)]>>;
                                url: TString;
                            },
                        >,
                    ],
                >,
            >,
        >;
    },
> = ...