title: Whats is the difference between using '@aws-sdk/client-sqs' and 'aws-sdk/clients/sqs'
body: <p>There are a few differences between the packages <code>@aws-sdk/client-sqs</code> and <code>aws-sdk/clients/sqs</code> in terms of declaration, but what about the functionalities? Is there a single implication choosing any of them?</p>
  <p><strong>Using <code>@aws-sdk/client-sqs</code>:</strong></p>
  <pre><code>import { SQSClient, ListQueuesCommand } from '@aws-sdk/client-sqs';
  
  export default class SQSHelper {
      client: SQSClient;
  
      constructor(region: string) {
          this.client = new SQSClient({ region });
      }
  
      listQueues() {
          return new Promise((resolve, reject) =&gt; {
              this.client.send(new ListQueuesCommand({}), (err, data) =&gt; {
                  if (err) {
                      reject(err);
                  } else {
                      resolve(data);
                  }
              });
          }
          );
      }
  }
  </code></pre>
  <p><strong>Using <code>aws-sdk/clients/sqs</code>:</strong></p>
  <pre><code>import SQSClient from 'aws-sdk/clients/sqs';
  
  export default class SQSHelper {
      client: SQSClient;
  
      constructor(region: string) {
          this.client = new SQSClient({ region });
      }
  
      listQueues() {
          return new Promise((resolve, reject) =&gt; {
              this.client.listQueues({}, (err, data) =&gt; {
                  if (err) {
                      reject(err);
                  } else {
                      resolve(data);
                  }
              });
          }
          );
      }
  }
  </code></pre>