import { GenericObject, LoggerService } from '@node-c/core'; import { IAMAuthorizationStaticCheckAccessOptions, IAMAuthorizationStaticCheckAccessResult, IAMAuthorizationUser, IAMAuthorizeApiKeyData, IAMAuthorizeApiKeyOptions, IAMPermission } from './iam.authorization.definitions'; import { DecodedTokenContent, IAMTokenManagerService } from '../tokenManager'; export declare class IAMAuthorizationService = IAMTokenManagerService> { protected logger: LoggerService; protected tokenManager?: TokenManager | undefined; constructor(logger: LoggerService, tokenManager?: TokenManager | undefined); authorizeApiKey(data: IAMAuthorizeApiKeyData, options: IAMAuthorizeApiKeyOptions): Promise<{ valid: boolean; }>; authorizeBearer(data: { authToken?: string; refreshToken?: string; }, options?: { identifierDataField?: string; }): Promise<{ newAccessToken?: string; newIdToken?: string; newRefreshToken?: string; tokenContent?: DecodedTokenContent; valid: boolean; }>; checkAccessWithStorage(): Promise; static checkAccess(inputData: InputData, user: IAMAuthorizationUser, options: IAMAuthorizationStaticCheckAccessOptions): IAMAuthorizationStaticCheckAccessResult; static getValuesForTesting(valueToTest: unknown): unknown[]; static matchInputValues(input: GenericObject, values: GenericObject): GenericObject; static processOutputData(permissions: { [id: number]: IAMPermission; }, outputData: GenericObject): { outputDataToBeMutated: GenericObject; }; static testValue(valueToTest: unknown, valueToTestAgainst: unknown): boolean; }