import { AxiosInstance } from 'axios'; import { AuthCredentials, AuthInstance, Method } from './types/AuthTypes.js'; import { UberDirectTypeProtectErrorHandling } from './UberDirectTypeProtect.js'; import { UberDirectLogger } from './UberDirectLogger.js'; import 'zod'; import './types/logger.js'; declare class UberDirectAuth extends UberDirectTypeProtectErrorHandling { private readonly scope; httpClient: AxiosInstance; private _clientId; private _clientSecret; private _customerId; constructor(credentials: AuthCredentials, scope?: 'eats.deliveries' | 'direct.organizations'); private _logger; set logger(logger: UberDirectLogger | undefined); private _accessToken?; get accessToken(): string | undefined; private _tokenExpirationTime?; get tokenExpirationTime(): number | undefined; /** * reload new instance from saved instance * @param savedInstance */ static reloadInstance(savedInstance: AuthInstance): UberDirectAuth; /** * get customer id */ getCustomerId(): string; /** * make api request * @param method * @param endpoint * @param data * @param logger * @param retryCount */ makeApiRequest(method: Method, endpoint: string, data?: Record, logger?: UberDirectLogger, retryCount?: number): Promise; /** * save current instance */ exportInstance(): AuthInstance; /** * authenticate and get access token * @private */ private getAccessToken; } export { UberDirectAuth };