JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 74
  • Score
    100M100P100Q87129F
  • License MIT

Shared TypeScript types for TJOC platform

Package Exports

  • @tjoc/types
  • @tjoc/types/dist/index.js
  • @tjoc/types/dist/index.mjs

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@tjoc/types) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

@tjoc/types

Shared TypeScript type definitions for The Journey of Code (TJOC) platform.

Installation

yarn add @tjoc/types

Usage

Import the types you need:

import { User, UserRole, Status } from '@tjoc/types';

// Create a user object with type checking
const user: User = {
  id: '123',
  email: 'user@example.com',
  firstName: 'John',
  lastName: 'Doe',
  role: UserRole.USER,
  status: Status.ACTIVE,
  emailVerified: true,
  createdAt: new Date(),
  updatedAt: new Date(),
};

Available Types

Common Types

  • Status - Entity status enum (ACTIVE, INACTIVE, PENDING, etc.)
  • Environment - Environment type enum (DEVELOPMENT, STAGING, PRODUCTION)
  • PaginationParams - Parameters for paginated requests
  • PaginatedResponse<T> - Generic paginated response
  • ApiResponse<T> - Generic API response
  • ErrorResponse - Error response structure
  • SuccessResponse<T> - Success response structure
  • TimestampFields - Common timestamp fields

User Types

  • UserRole - User role enum (ADMIN, USER, INSTRUCTOR)
  • UserSettings - User preferences and settings
  • User - User entity
  • CreateUserPayload - User creation payload
  • UpdateUserPayload - User update payload

Authentication Types

  • LoginPayload - Login request payload
  • RegisterPayload - Registration request payload
  • AuthResponse - Authentication response
  • RefreshTokenPayload - Token refresh payload
  • ResetPasswordPayload - Password reset payload
  • VerifyEmailPayload - Email verification payload

Development

Setup

# Install dependencies
yarn install

# Build the package
yarn build

# Run tests
yarn test

# Run type checking
yarn typecheck

# Run linting
yarn lint

Testing

Tests are written using Jest. Run them with:

# Run tests once
yarn test

# Run tests in watch mode
yarn test:watch

Building

The package is built using tsup. Build commands:

# Build once
yarn build

# Build in watch mode
yarn dev

Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

License

This package is private and for use within TJOC platform only.