title: Inject CDKTF multiline token value
body: <p><strong>Context:</strong></p>
  <ul>
  <li>TLS provider: SelfSignedCert</li>
  <li>AWS provider: ECS Fargate task</li>
  </ul>
  <pre class="lang-js prettyprint-override"><code>    const cert = new SelfSignedCert(this.stack, `${certName}-sscert`, {
        keyAlgorithm: 'RSA',
        privateKeyPem: privateKey.privateKeyPem,
        subject: [{
          commonName,
          organization
        }],
        validityPeriodHours,
        allowedUses
      });
  
      const containerDefinitionConfig = {
        path: {
          path: ecsJsonTaskDefPath,
        },
        args: {
          ...
          'certPem': cert.certPem,
          ...
        }
      };
  
  </code></pre>
  <p>If I try to run it like that, I get the following error:</p>
  <p><code>Error: ECS Task Definition container_definitions is invalid: Error decoding JSON: invalid character '\n' in string literal</code></p>
  <p>I tried using:</p>
  <ul>
  <li><code>cert.certPem.replace(/\n/g', '\\n')</code> directly on the value -- pointless because it's a token and the <code>replace</code> function only applies to the token ref, not the value itself. So I get the same error from above.</li>
  <li><code>Fn.replace(cert.certPem, '/\n/', '\\n')</code> but it's complaining with <code>Error: '\n' can not be used as value directly since it has unescaped double quotes in it. To safely use the value please use Fn.rawString on your string.</code></li>
  <li><code>Fn.rawString(cert.certPem)</code> doesn't fail but sets the env var as <code>&quot;${tls_self_signed_cert.seb-alice-sscert.cert_pem}&quot;</code></li>
  </ul>
  <p>Versions:</p>
  <p><code>&quot;cdktf&quot;: &quot;^0.9.0&quot;,</code></p>
  <pre class="lang-json prettyprint-override"><code>  &quot;terraformProviders&quot;: [
      &quot;aws@~&gt; 3.74.0&quot;,
      &quot;random@~&gt; 3.1.0&quot;,
      &quot;tls@~&gt; 3.1.0&quot;
    ],
  </code></pre>