import { GoogleRecaptchaGuardOptions } from './google-recaptcha-guard-options'; import { GoogleRecaptchaValidatorOptions } from './google-recaptcha-validator-options'; import { ModuleMetadata, Type } from '@nestjs/common/interfaces'; import { Logger } from '@nestjs/common'; import { Abstract } from '@nestjs/common/interfaces/abstract.interface'; export interface GoogleRecaptchaModuleOptions extends GoogleRecaptchaValidatorOptions, GoogleRecaptchaGuardOptions { debug?: boolean; logger?: Logger; global?: boolean; } export interface GoogleRecaptchaOptionsFactory { createGoogleRecaptchaOptions(): Promise | GoogleRecaptchaModuleOptions; } export interface GoogleRecaptchaModuleAsyncOptions extends Pick { inject?: Array | Function>; useClass?: Type; useExisting?: Type; useFactory?: (...args: any[]) => Promise> | Omit; global?: boolean; }