export type CreateApiAppsSystemConfigOrgApacheHttpProxyconfiguratorConfigArgs = {'proxy.host'?: string | undefined, 'proxy.host@TypeHint'?: string | undefined, 'proxy.port'?: number | undefined, 'proxy.port@TypeHint'?: string | undefined, 'proxy.exceptions'?: Array | undefined, 'proxy.exceptions@TypeHint'?: string | undefined, 'proxy.enabled'?: boolean | undefined, 'proxy.enabled@TypeHint'?: string | undefined, 'proxy.user'?: string | undefined, 'proxy.user@TypeHint'?: string | undefined, 'proxy.password'?: string | undefined, 'proxy.password@TypeHint'?: string | undefined}; export type CreateApiAppsSystemConfigOrgApacheHttpProxyconfiguratorConfigOptions = {baseUrl: string, aemAuth?: {username: string, password: string} | undefined, fetch?: typeof fetch | undefined}; /** * POST /apps/system/config/org.apache.http.proxyconfigurator.config */ export const createApiAppsSystemConfigOrgApacheHttpProxyconfiguratorConfig = async (args: CreateApiAppsSystemConfigOrgApacheHttpProxyconfiguratorConfigArgs, options: CreateApiAppsSystemConfigOrgApacheHttpProxyconfiguratorConfigOptions) => { const {baseUrl, fetch: fetchFn = fetch, aemAuth} = options ?? {} const query = new URLSearchParams() const headers = new Headers() if (args['proxy.host'] != null) query.append("proxy.host", String(args['proxy.host'])) if (args['proxy.host@TypeHint'] != null) query.append("proxy.host@TypeHint", String(args['proxy.host@TypeHint'])) if (args['proxy.port'] != null) query.append("proxy.port", String(args['proxy.port'])) if (args['proxy.port@TypeHint'] != null) query.append("proxy.port@TypeHint", String(args['proxy.port@TypeHint'])) for (const item of args['proxy.exceptions'] ?? []) query.append("proxy.exceptions", String(item)) if (args['proxy.exceptions@TypeHint'] != null) query.append("proxy.exceptions@TypeHint", String(args['proxy.exceptions@TypeHint'])) if (args['proxy.enabled'] != null) query.append("proxy.enabled", String(args['proxy.enabled'])) if (args['proxy.enabled@TypeHint'] != null) query.append("proxy.enabled@TypeHint", String(args['proxy.enabled@TypeHint'])) if (args['proxy.user'] != null) query.append("proxy.user", String(args['proxy.user'])) if (args['proxy.user@TypeHint'] != null) query.append("proxy.user@TypeHint", String(args['proxy.user@TypeHint'])) if (args['proxy.password'] != null) query.append("proxy.password", String(args['proxy.password'])) if (args['proxy.password@TypeHint'] != null) query.append("proxy.password@TypeHint", String(args['proxy.password@TypeHint'])) if (aemAuth !== undefined) headers.set('authorization', `Basic ${btoa(`${aemAuth.username}:${aemAuth.password}`)}`) const url = `${baseUrl.replace(/\/+$/, '')}/apps/system/config/org.apache.http.proxyconfigurator.config${query.size > 0 ? `?${query}` : ''}` const res = await fetchFn(url, {method: "POST", headers}) if (!res.ok) throw new Error(`Request failed with status ${res.status}`, {cause: {status: res.status, body: await res.text()}}) return undefined };