import { Construct } from '../core/construct'; import { Token } from '../core/tokens'; import { Condition } from './condition'; import { FnImportValue } from './fn'; import { StackElement } from './stack'; export interface OutputProps { /** * A String type that describes the output value. * The description can be a maximum of 4 K in length. */ description?: string; /** * The value of the property returned by the aws cloudformation describe-stacks command. * The value of an output can include literals, parameter references, pseudo-parameters, * a mapping value, or intrinsic functions. */ value?: any; /** * The name used to export the value of this output across stacks. To import * the value from another stack, use `FnImportValue(export)`. You can create * an import value token by calling `output.makeImportValue()`. * * @default The default behavior is to automatically allocate an export name * for outputs based on the stack name and the output's logical ID. To * create an output without an export, set `disableExport: true`. */ export?: string; /** * Disables the automatic allocation of an export name for this output. * * @default false, which means that an export name is either explicitly * specified or allocated based on the output's logical ID and stack name. */ disableExport?: boolean; /** * A condition from the "Conditions" section to associate with this output * value. If the condition evaluates to `false`, this output value will not * be included in the stack. */ condition?: Condition; } export declare class Output extends StackElement { /** * A String type that describes the output value. * The description can be a maximum of 4 K in length. */ readonly description?: string; /** * The value of the property returned by the aws cloudformation describe-stacks command. * The value of an output can include literals, parameter references, pseudo-parameters, * a mapping value, or intrinsic functions. */ readonly value?: any; /** * The name of the resource output to be exported for a cross-stack reference. * By default, the logical ID of the Output element is used as it's export name. */ readonly export?: string; /** * A condition from the "Conditions" section to associate with this output * value. If the condition evaluates to `false`, this output value will not * be included in the stack. */ readonly condition?: Condition; /** * Creates an Output value for this stack. * @param parent The parent construct. * @param props Output properties. */ constructor(parent: Construct, name: string, props?: OutputProps); /** * Returns an FnImportValue bound to this export name. */ makeImportValue(): FnImportValue; toCloudFormation(): object; readonly ref: Token; } /** * Properties for ListOutput */ export interface StringListOutputProps { /** * A String type that describes the output value. * The description can be a maximum of 4 K in length. */ readonly description?: string; /** * The list of primitives to export */ readonly values: any[]; /** * The separator to use to separate stringified values * * @default "," */ readonly separator?: string; /** * The name used to export the value of this output across stacks. To import * the value from another stack, use `FnImportValue(export)`. You can create * an import value token by calling `output.makeImportValue()`. * * @default The default behavior is to automatically allocate an export name * for outputs based on the stack name and the output's logical ID. To * create an output without an export, set `disableExport: true`. */ readonly export?: string; /** * Disables the automatic allocation of an export name for this output. * * @default false, which means that an export name is either explicitly * specified or allocated based on the output's logical ID and stack name. */ readonly disableExport?: boolean; /** * A condition from the "Conditions" section to associate with this output * value. If the condition evaluates to `false`, this output value will not * be included in the stack. */ readonly condition?: Condition; } /** * An output for a list of strings. * * Exports a list of Tokens via an Output variable, and return a list of Tokens * that selects the imported values for them. */ export declare class StringListOutput extends Construct { /** * Number of elements in the stringlist */ readonly length: number; /** * The separator used to combine the string values */ private readonly separator; /** * The Output object that was created */ private readonly output; constructor(parent: Construct, name: string, props: StringListOutputProps); /** * Return an array of imported values for this Output */ makeImportValues(): Token[]; }