import { SMap, ResourceError } from "../general"; import { Field, InlineAdvField } from "../field"; import { resourceIdentifier, checkValid, prepareQueue, toJson } from "../symbols"; import { stackPreparable } from "../stackBackend"; import { pathItem } from "../path"; export declare function Sub(text: string, subs: SMap>): Substitution; export declare function Sub(text: readonly string[], ...args: Field[]): Substitution; export declare class Substitution extends InlineAdvField { protected readonly text: readonly string[] | string; protected readonly args: Field[]; [resourceIdentifier]: string; constructor(depth: number, text: readonly string[] | string, args: Field[]); protected generateSubstitutionOutputApi(text: string, subs: SMap): string | { "Fn::Sub": string; } | { "Fn::Sub": string[]; }; protected cleanText(text: string): string; protected generateSubstitutionOutput(text: readonly string[], args: Field[]): string | { "Fn::Sub": (string | SMap)[]; } | { "Fn::Sub": string; }; private generateTag; [toJson](): string | { "Fn::Sub": string; } | { "Fn::Sub": (string | SMap)[]; }; [checkValid](): SMap; [prepareQueue](stack: stackPreparable, path: pathItem, ref: boolean): void; }