import { AuthenticationType } from "./authentication"; import { URL } from "url"; export type DestinationType = "HTTP"; export interface Credentials { authentication: AuthenticationType; basicAuthentication?: BasicAuthentication; oauth2ClientCredentials?: OAuth2ClientCredentials; } export interface BasicAuthentication { userName: string; userPassword: string; } export type TokenServiceURLType = 'Dedicated' | 'Common'; export interface OAuth2ClientCredentials { clientId: string; clientSecret: string; tokenServiceURL: string; tokenServiceURLType: TokenServiceURLType; tokenServiceUser?: string; tokenServicePassword?: string; } export type ProxyDestinationType = "Internet" | "OnPremise"; export interface ProviderDestination { name: string; type: DestinationType; credentials: Credentials; proxyType: ProxyDestinationType; description?: string; url: URL; host: string; [key: string]: any; } export interface ResponseDestination { Name: string; Type: string; Authentication: string; ProxyType: string; Description?: string; URL?: string; Host?: string; }