...

/

Weak Types in Interfaces

Weak Types in Interfaces

Learn how weak types in TypeScript offer flexibility for defining and validating data structures without strict type enforcement.

Introduction to weak types

When we define an interface where all of its properties are optional, this is considered to be a weak type. In other words, we have defined an interface, but none of the properties of the interface are mandatory.

Let’s see what happens if we create a weak type and then try to bend the standard type rules as follows:

// Interface `IWeakType` defines the structure of a weak type object with optional properties `id` and `name`
interface IWeakType {
id?: number;
name?: string;
}
// `weakTypeNoOverlap` is a variable that is assigned an object that does not match the structure defined by `IWeakType`
// The object has a `description` property, which is not part of the `IWeakType` definition
let weakTypeNoOverlap: IWeakType = {
description: "a description",
};
Weak types in interfaces
  • We define an interface name IWeakType ...