import type { Service } from '../environment-accessor'; import type { ServiceBindingTransformFunction, ServiceBindingTransformOptions } from './destination-from-vcap'; import type { Destination } from './destination-service-types'; /** * @internal */ export declare const serviceToDestinationTransformers: Record; /** * Convenience function to create a destination from the provided service binding. * If a JWT is provided as part of options, the tenant in the JWT is used for client credentials grant, else the provider tenant is used, wherever applicable. * Supported service types are: * - business-logging (OAuth2ClientCredentials) * - destination (OAuth2ClientCredentials) * - s4-hana-cloud (BasicAuthentication) * - saas-registry (OAuth2ClientCredentials) * - workflow (OAuth2ClientCredentials) * - service-manager (OAuth2ClientCredentials) * - xsuaa (OAuth2ClientCredentials) * - aicore (OAuth2ClientCredentials) * - identity (OAuth2ClientCredentials with mTLS or client secret) * Throws an error if the provided service binding is not supported. * @param serviceBinding - The service binding to transform. * @param options - Options used for fetching the destination. * @returns A promise returning the transformed destination on success. */ export declare function transformServiceBindingToDestination(serviceBinding: Service, options?: ServiceBindingTransformOptions): Promise; /** * Convenience function to create a destination from the provided service binding. * Transforms a service binding to a destination of type OAuth2ClientCredentials. * If a JWT is provided as part of the options, the tenant in the JWT is used for the client credentials grant, else the provider tenant is used, wherever applicable. * @param service - The service binding to transform. * @param options - Options used to transform the service binding. * @returns A promise returning the transformed destination on success. */ export declare function transformServiceBindingToClientCredentialsDestination(service: Service, options?: ServiceBindingTransformOptions & { url?: string; }): Promise;