import { HttpMethod, HttpRequestHandler } from "../../common/drivers/HttpRequestHandler"; import { AccessTokenDTO } from "../../common/models/AccessTokenDTO"; import { ResponseStatusDTO } from "../../common/models/ResponseStatusDTO"; import { OAuthDriver } from "./OAuthDriver"; import { OAuthEntity, OAuthEntityType } from "./OAuthEntity"; import { OAuthProviderParameters } from "../models/OAuthConfig"; export declare class BasicOAuthDriver implements OAuthDriver { protected readonly name: string; protected readonly provider: OAuthProviderParameters; protected dataFieldName: string; protected codeFieldName: string; protected usesSecondsUTC: boolean; protected httpService: HttpRequestHandler; constructor(name: string, provider: OAuthProviderParameters); get providerName(): string; get dataField(): string; get codeField(): string; get usesUTCSecondsToEpoch(): boolean; getAuthorizeURL(extra: string): string; protected buildAuthorizeQuery(data: string): string; getAccessToken(code: string, data?: string): Promise; updateAccessToken(refreshToken: string): Promise; executeRequest(accessToken: string, endpointUri: string, method?: HttpMethod, body?: any, options?: any, headers?: any): Promise; protected requestAccessToken(params: Record): Promise; getEntityDefinition(data: any, type?: OAuthEntityType): OAuthEntity; protected extractFromResponse(data: any): AccessTokenDTO; }