plugin_options: TObject<
    {
        ajv: TOptional<TAny>;
        includeErrorDescription: TOptional<TBoolean>;
        isAccessTokenRevoked: TFunction<[TString], TPromise<TBoolean>>;
        isRefreshTokenRevoked: TFunction<[TString], TPromise<TBoolean>>;
        issuer: TString;
        jwksUrl: TObject<
            {
                hash: TString;
                host: TString;
                hostname: TString;
                href: TString;
                origin: TString;
                password: TString;
                pathname: TString;
                port: TString;
                protocol: TString;
                search: TString;
                searchParams: TAny;
                toJSON: TAny;
                username: TString;
            },
        >;
        logPrefix: TOptional<TString>;
        me: TUnion<[TString, TString]>;
        reportAllAjvErrors: TOptional<TBoolean>;
        retrieveAccessToken: TFunction<
            [TString],
            TPromise<
                TUnion<
                    [
                        TObject<
                            {
                                client_id: TString;
                                created_at: TNumber;
                                id: TUnion<[TNumber, TString]>;
                                jti: TString;
                                redirect_uri: TString;
                                revocation_reason: TOptional<TString>;
                                revoked: TOptional<TBoolean>;
                            },
                        >,
                        TObject<
                            {
                                client_id: TString;
                                created_at: TUnion<[TNumber, TNull]>;
                                deleted_at: TOptional<TUnion<[(...), (...)]>>;
                                id: TUnion<[TNumber, TString]>;
                                jti: TString;
                                redirect_uri: TString;
                                revocation_reason: TOptional<TString>;
                                revoked: TOptional<TBoolean>;
                                undeleted_at: TOptional<TUnion<[(...), (...)]>>;
                                updated_at: TOptional<TUnion<[(...), (...)]>>;
                            },
                        >,
                    ],
                >,
            >,
        >;
        retrieveRefreshToken: TFunction<
            [TString],
            TPromise<
                TUnion<
                    [
                        TObject<
                            {
                                client_id: TString;
                                created_at: TNumber;
                                exp: TNumber;
                                id: TUnion<[TNumber, TString]>;
                                iss: TString;
                                jti: TString;
                                me: TString;
                                redirect_uri: TString;
                                refresh_token: TString;
                                revocation_reason: TOptional<TString>;
                                revoked: TOptional<TBoolean>;
                                scope: TString;
                            },
                        >,
                        TObject<
                            {
                                client_id: TString;
                                created_at: TUnion<[TNumber, TNull]>;
                                deleted_at: TOptional<TUnion<[(...), (...)]>>;
                                exp: TNumber;
                                id: TUnion<[TNumber, TString]>;
                                iss: TString;
                                jti: TString;
                                me: TString;
                                redirect_uri: TString;
                                refresh_token: TString;
                                revocation_reason: TOptional<TString>;
                                revoked: TOptional<TBoolean>;
                                scope: TString;
                                undeleted_at: TOptional<TUnion<[(...), (...)]>>;
                                updated_at: TOptional<TUnion<[(...), (...)]>>;
                            },
                        >,
                    ],
                >,
            >,
        >;
    },
> = ...