@altostra/core
Version:
Core library for shared types and logic
28 lines (27 loc) • 1.81 kB
TypeScript
import type { AwsSamTemplate } from "../../../aws/SamTemplate/AwsSamTemplate";
import type { Maybe } from "../../../common/Maybe";
import type { AxiosInstance } from 'axios';
import type { Dict } from "../../Common";
import type { Project } from "../../Types";
import type { ErrorMapping, IdentityToken } from "../common";
import { ServiceClientBase } from "../ServiceClientBase";
import type { IntegrationsData, NestedStacksSupport, TransformationOutput } from "./Types";
export interface CompilerOptions {
axios?: AxiosInstance;
errorMapping?: ErrorMapping;
}
export interface CompilationOptions<TMultiOutputSupport extends Maybe<NestedStacksSupport> = undefined> {
configSet?: Dict<string>;
configMap?: Dict<string>;
ignoreMissingParams?: boolean;
nestedStacksSupport?: TMultiOutputSupport;
globalEnvironment?: Record<string, string>;
integrations?: IntegrationsData;
mockIntegrationData?: boolean;
}
export declare class RemoteCompiler extends ServiceClientBase {
#private;
constructor(getToken: () => Promise<IdentityToken>, endpoint: string, { axios, errorMapping }?: CompilerOptions);
compileToAwsSamTemplate<TMultiOutputSupport extends Maybe<NestedStacksSupport> = undefined>(project: Readonly<Project>, { configSet, configMap, ignoreMissingParams, nestedStacksSupport, globalEnvironment, integrations, mockIntegrationData, }?: CompilationOptions<TMultiOutputSupport>): Promise<TransformationOutput<AwsSamTemplate, TMultiOutputSupport>>;
compileToTerraformTemplate<TMultiOutputSupport extends Maybe<NestedStacksSupport> = undefined>(project: Readonly<Project>, { configSet, configMap, ignoreMissingParams, nestedStacksSupport, globalEnvironment, integrations, mockIntegrationData, }?: CompilationOptions<TMultiOutputSupport>): Promise<string>;
}