import { ConfigProviderService, LoggerService } from '@node-c/core'; import { IAMAuthenticationOAuth2CompleteData, IAMAuthenticationOAuth2CompleteOptions, IAMAuthenticationOAuth2CompleteResult, IAMAuthenticationOAuth2GetPayloadsFromExternalTokensData, IAMAuthenticationOAuth2GetPayloadsFromExternalTokensResult, IAMAuthenticationOAuth2GetUserCreateAccessTokenConfigResult, IAMAuthenticationOAuth2InitiateData, IAMAuthenticationOAuth2InitiateOptions, IAMAuthenticationOAuth2InitiateResult, IAMAuthenticationOAuth2VerifyExternalAccessTokenData, IAMAuthenticationOAuth2VerifyExternalAccessTokenResult } from './iam.authenticationOAuth2.definitions'; import { IAMAuthenticationService } from '../authentication'; export declare class IAMAuthenticationOAuth2Service extends IAMAuthenticationService { protected configProvider: ConfigProviderService; protected logger: LoggerService; protected moduleName: string; protected serviceName: string; constructor(configProvider: ConfigProviderService, logger: LoggerService, moduleName: string, serviceName: string); complete(data: IAMAuthenticationOAuth2CompleteData, _options: IAMAuthenticationOAuth2CompleteOptions): Promise; protected generateChallenge(codeVerifier: string): Promise; protected generateUrlEncodedString(length: number): string; getPayloadsFromExternalTokens(data: IAMAuthenticationOAuth2GetPayloadsFromExternalTokensData): Promise; getUserCreateAccessTokenConfig(): IAMAuthenticationOAuth2GetUserCreateAccessTokenConfigResult; initiate(data: IAMAuthenticationOAuth2InitiateData, options: IAMAuthenticationOAuth2InitiateOptions): Promise; verifyExternalAccessToken(data: IAMAuthenticationOAuth2VerifyExternalAccessTokenData): Promise; protected verifyToken(token: string, options?: { audiences?: string[]; issuer?: string; secret?: string; }): Promise<{ content?: DecodedTokenContent; error?: unknown; }>; }