CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl/npm-tns-platform-declarations

Platform-specific TypeScript declarations for NativeScript for accessing native objects

84

1.23x
Overview
Eval results
Files

task.mdevals/scenario-2/

NativeScript Type Configuration Helper

Create a TypeScript utility that helps developers set up proper type references for NativeScript projects targeting both Android and iOS platforms.

Requirements

Build a module that:

  1. Creates platform-specific type reference files - Generate TypeScript declaration files that include the appropriate type references for Android and iOS
  2. Supports Android API level configuration - Allow specifying different Android API levels (17, 21, or 28)
  3. Validates type reference setup - Provide a function to check if type references are properly configured

Specifications

Type Reference File Generator

Create a module type-setup.ts that exports functions to generate type reference files:

  1. generateAndroidTypeFile(apiLevel: number): string - Returns the content for an Android type reference file as a string. The apiLevel parameter determines which Android API level to target (17, 21, or 28).

  2. generateIosTypeFile(): string - Returns the content for an iOS type reference file as a string.

The generated file contents should be valid TypeScript declaration files that include the proper syntax to reference platform-specific types.

Type Reference Validator

Create a function validateTypeReferences(fileContent: string, platform: 'android' | 'ios'): boolean that:

  • Takes a string containing TypeScript declaration file content
  • Validates that it contains the correct reference syntax for the specified platform
  • Returns true if valid, false otherwise

Test Cases

  • generateAndroidTypeFile should create content with API level 17 reference @test
  • generateAndroidTypeFile should create content with API level 28 reference @test
  • generateIosTypeFile should create content with iOS platform reference @test
  • validateTypeReferences should return true for valid Android type reference @test
  • validateTypeReferences should return false for invalid type reference @test

Implementation

@generates

API

/**
 * Generate the content for an Android type reference file
 * @param apiLevel - Android API level (17, 21, or 28)
 * @returns String content of the TypeScript declaration file
 */
export function generateAndroidTypeFile(apiLevel: number): string;

/**
 * Generate the content for an iOS type reference file
 * @returns String content of the TypeScript declaration file
 */
export function generateIosTypeFile(): string;

/**
 * Validate that a TypeScript declaration file contains proper type references
 * @param fileContent - Content of the declaration file to validate
 * @param platform - Target platform ('android' or 'ios')
 * @returns true if valid, false otherwise
 */
export function validateTypeReferences(fileContent: string, platform: 'android' | 'ios'): boolean;

Dependencies { .dependencies }

tns-platform-declarations { .dependency }

Provides TypeScript declarations for NativeScript platform APIs, enabling access to native Android and iOS APIs with full type safety.

Install with Tessl CLI

npx tessl i tessl/npm-tns-platform-declarations

tile.json