Introduction

Welcome! Today, we are going to explore an engaging task that involves managing employee records within a company. Specifically, we will work with nested objects and arrays to add projects and tasks for employees and retrieve those tasks as needed. This exercise will help you understand how to manipulate nested data structures efficiently using TypeScript's type safety features.

Introducing Methods to Implement

Let's start by discussing the methods we will implement in our EmployeeRecords class, utilizing type annotations for method parameters and return types to provide type safety.

  • addProject(employeeId: string, projectName: string): boolean — This method adds a new project to an employee's list of projects. If the project already exists for that employee, the method returns false. Otherwise, it adds the project and returns true.
  • addTask(employeeId: string, projectName: string, task: string): boolean — This method adds a new task to a specified project for an employee. If the project does not exist for that employee, the method returns false. If the task is added successfully, it returns true.
  • getTasks(employeeId: string, projectName: string): string[] | null — This method retrieves all tasks for a specified project of an employee. If the project does not exist for that employee, the method returns . Otherwise, it returns the list of tasks.
Sign up
Join the 1M+ learners on CodeSignal
Be a part of our community of 1M+ users who develop and demonstrate their skills on CodeSignal