title: Is there a way to prevent passing undefined in my named parameter constructor?
body: <p>I have the following class</p>
  <pre><code>export class ComponentModel {
      type: ComponentType;
      displayName: string;
      isEnabled: boolean;
  
      constructor({
          type = ComponentType.defaultComponent,
          displayName = &quot;Component&quot;,
          isEnabled = false
      }) {
          this.type = type;
          this.displayName = displayName;
          this.isEnabled = isEnabled;
      }
  }
  </code></pre>
  <p>When I look at my constructor I notice that you can pass undefined</p>
  <pre><code>constructor ComponentModel({ type, displayName, isEnabled }: {
      type?: ComponentType | undefined;
      displayName?: string | undefined;
      isEnabled?: boolean | undefined;
  }): ComponentModel
  </code></pre>
  <p>How can I prevent this? I want to prevent having to check if something is undefined in my application.</p>