import * as core from "@terrascript/core"; export interface DagEdgeArgs extends core.SchemaArgs { source: string | core.StringOut; target: string | core.StringOut; targetParameter?: string | core.StringOut; } export class DagEdge extends core.Schema { @core.attr(String) public source!: string | core.StringOut; @core.attr(String) public target!: string | core.StringOut; @core.attr(String) public targetParameter?: string | core.StringOut; } export interface ArgsArgs extends core.SchemaArgs { name: string | core.StringOut; param?: boolean | core.BooleanOut; value: string | core.StringOut; } export class Args extends core.Schema { @core.attr(String) public name!: string | core.StringOut; @core.attr(Boolean) public param?: boolean | core.BooleanOut; @core.attr(String) public value!: string | core.StringOut; } export interface DagNodeArgs extends core.SchemaArgs { args: core.Array | core.ArrayOut; id: string | core.StringOut; lineNumber?: number | core.NumberOut; nodeType: string | core.StringOut; } export class DagNode extends core.Schema { @core.attr(Args, { kind: "array" }) public args!: core.Array | core.ArrayOut; @core.attr(String) public id!: string | core.StringOut; @core.attr(Number) public lineNumber?: number | core.NumberOut; @core.attr(String) public nodeType!: string | core.StringOut; } export interface DsScriptArgs { /** * (Required) A list of the edges in the DAG. Defined below. */ dagEdge: core.Array | core.ArrayOut; /** * (Required) A list of the nodes in the DAG. Defined below. */ dagNode: core.Array | core.ArrayOut; /** * (Optional) The programming language of the resulting code from the DAG. Defaults to `PYTHON`. Valid * values are `PYTHON` and `SCALA`. */ language?: string | core.StringOut; } export class DsScript extends core.Data { /** * (Required) A list of the edges in the DAG. Defined below. */ @core.attr(DagEdge, { kind: "array" }) public dagEdge!: core.Array | core.ArrayOut; /** * (Required) A list of the nodes in the DAG. Defined below. */ @core.attr(DagNode, { kind: "array" }) public dagNode!: core.Array | core.ArrayOut; /** * (Required) A node identifier that is unique within the node's graph. */ @core.attr(String, { computed: true }) public id!: string | core.StringOut; /** * (Optional) The programming language of the resulting code from the DAG. Defaults to `PYTHON`. Valid * values are `PYTHON` and `SCALA`. */ @core.attr(String) public language?: string | core.StringOut; /** * The Python script generated from the DAG when the `language` argument is set to `PYTHON`. */ @core.attr(String, { computed: true }) public pythonScript!: string | core.StringOut; /** * The Scala code generated from the DAG when the `language` argument is set to `SCALA`. */ @core.attr(String, { computed: true }) public scalaCode!: string | core.StringOut; constructor(name: string, args?: DsScriptArgs) { super(name, "aws_glue_script", args); } public override getNamespace(): string { return "aws_glue"; } }