New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details →
Socket
Book a DemoSign in
Socket

@texturehq/device

Package Overview
Dependencies
Maintainers
3
Versions
23
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@texturehq/device

A type-safe client for validating device data

latest
npmnpm
Version
2.2.0
Version published
Maintainers
3
Created
Source

@texturehq/device

npm version

A type-safe TypeScript client for working with device data in the Texture platform. This package provides strongly-typed interfaces and utilities for querying and validating device information, manufacturers, and device models.

Features

  • Type-safe API for querying device data
  • Comprehensive TypeScript definitions for all device-related entities
  • Built-in validation for device data structures
  • Utilities for working with manufacturers and device models
  • Full TypeScript support

Installation

npm install @texturehq/device
# or
yarn add @texturehq/device

Usage

Querying Manufacturers

import { getManufacturers, getManufacturer, Manufacturer } from "@texturehq/device";

// Get all manufacturers
const listManufacturers = async () => {
  const response = await getManufacturers();
  const manufacturers: Manufacturer[] = response.manufacturers;

  // Work with strongly-typed manufacturer data
  manufacturers.forEach(manufacturer => {
    console.log(manufacturer.name, manufacturer.slug);
  });
};

// Get a specific manufacturer
const getSpecificManufacturer = async () => {
  const manufacturer = await getManufacturer({ slug: "bmw" });
  console.log(manufacturer.name, manufacturer.supportedRegions);
};

Working with Device Models

import { getDeviceModels, getDeviceModel, DeviceModel } from "@texturehq/device";

// Get all device models
const listDeviceModels = async () => {
  const response = await getDeviceModels();
  const models: DeviceModel[] = response.deviceModels;

  // Access strongly-typed model information
  models.forEach(model => {
    console.log(model.name, model.manufacturer, model.capabilities);
  });
};

// Get a specific device model
const getSpecificModel = async () => {
  const model = await getDeviceModel({ slug: "i4-edrive40" });
  console.log(model.name, model.specifications);
};

Available Types

The package exports several TypeScript interfaces for working with device data:

Core Types

  • Manufacturer - Represents a device manufacturer
  • DeviceModel - Represents a specific model from a manufacturer
  • Device - Represents an individual device instance
  • DeviceCapability - Describes what a device can do
  • Region - Represents supported geographical regions

API Response Types

  • ManufacturersResponse - Response structure for manufacturer queries
  • DeviceModelsResponse - Response structure for device model queries

Error Handling

All API methods can throw the following errors:

import { DeviceError } from "@texturehq/device";

try {
  const manufacturer = await getManufacturer({ slug: "invalid-slug" });
} catch (error) {
  if (error instanceof DeviceError) {
    // Handle device-specific errors
    console.error(error.message, error.code);
  } else {
    // Handle other errors
    console.error("Unexpected error", error);
  }
}

For more details on using this package and integrating with Texture's device ecosystem, consult our documentation or contact us.

License

MIT

FAQs

Package last updated on 26 Mar 2026

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts