TypeScript
Utility

Pick

Pick pada TypeScript digunakan untuk mengambil beberapa properti dari sebuah object dan membuat object baru dengan properti yang dipilih.

type Person = {
  name: string;
  age: number;
  address: string;
};
 
type PersonNameAndAge = Pick<Person, "name" | "age">;
 
const person: PersonNameAndAge = {
  name: "John Doe",
  age: 20,
};

Omit

Omit pada typescript digunakan untuk menghapus beberapa properti dari sebuah object dan membuat object baru dengan properti yang tersisa.

type Person = {
  name: string;
  age: number;
  address: string;
};
 
type PersonNameAndAge = Omit<Person, "address">;
 
const person: PersonNameAndAge = {
  name: "John Doe",
  age: 20,
};

Exclude

Exclude pada TypeScript digunakan untuk menghapus beberapa tipe dari sebuah tipe dan membuat tipe baru dengan tipe yang tersisa.

type Person = {
  name: string;
  age: number;
  address: string;
};
 
type PersonNameAndAge = Exclude<keyof Person, "address">;
 
const person: PersonNameAndAge = "name";

Extract

Extract pada TypeScript digunakan untuk mengambil beberapa tipe dari sebuah tipe dan membuat tipe baru dengan tipe yang dipilih.

type Person = {
  name: string;
  age: number;
  address: string;
};
 
type PersonNameAndAge = Extract<keyof Person, "name" | "age">;
 
const person: PersonNameAndAge = "name";

NonNullable

NonNullable pada TypeScript digunakan untuk menghapus tipe null dan undefined dari sebuah tipe.

type Person = {
  name: string;
  age: number;
  address: string;
};
 
type PersonNameAndAge = NonNullable<string | null | undefined>;
 
const person: PersonNameAndAge = "name";