Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

126
Views
How can I conditionally add several values to a type?

I have this type:

export type SupportedSourceLanguages =
  | LanguageISOCode.En
  | LanguageISOCode.Es
  | LanguageISOCode.Pt
  | LanguageISOCode.De
  | LanguageISOCode.Ko
  | LanguageISOCode.It;

I don't want those last two to be in the type when a condition is met. How can I conditionally add those last two values only when the condition is met?

This was my approach (but it's not working):

const environment = 'production'; 

type LiveSupportedSourceLanguages =
  | LanguageISOCode.En
  | LanguageISOCode.Es
  | LanguageISOCode.Pt
  | LanguageISOCode.De;

type DevSupportedSourceLanguages =
  | LanguageISOCode.Ko
  | LanguageISOCode.It;

export type SupportedSourceLanguages = LiveSupportedSourceLanguages extends environment === 'production' ? DevSupportedSourceLanguages : never;
about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

You need to check if const's type extends 'production':

export type SupportedSourceLanguages = typeof environment extends 'production' 
  ? LiveSupportedSourceLanguages 
  : DevSupportedSourceLanguages;

Playground

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!