@korostelevm/doc-types
v1.0.1
Published
Shared Type Definitions
Downloads
99
Readme
@korostelevm/doc-types
Version: 1.0.1
Description: Shared Type Definitions
@korostelevm/doc-types provides a robust collection of TypeScript interfaces that define document schemas utilized by the assistant project. These type definitions ensure consistency across your projects by providing a set of strong, validated, and up-to-date data models.
How It Works
The TypeScript interfaces in this package are generated from Zod schemas through an automated pipeline process:
- Zod Schema - The starting point that defines the validation rules and structure.
- JSON Schema - An intermediate format that provides a standardized way to describe the shape of JSON data.
- TypeScript Interfaces - Final TypeScript definitions generated using
json-schema-to-typescript
to ensure type safety in your code.
Installation
Install the package via npm:
npm install @korostelevm/doc-types
Usage
To take advantage of these predefined types, simply import them into your TypeScript projects. Below are examples showcasing how to import and utilize these types:
Example: Importing the ARAgingReportSchema
import { ARAgingReportSchema } from '@korostelevm/doc-types';
// Function to process an AR Aging Report
function processARAgingReport(report: ARAgingReportSchema) {
console.log(`Report Date: ${report.report_date}`);
console.log(`Total Receivables: ${report.total_receivables}`);
report.customers.forEach(customer => {
console.log(`Customer Name: ${customer.customer_name}`);
console.log(`Total Outstanding: ${customer.total_outstanding}`);
});
}
Example: Using the BalanceSheetSchema
import { BalanceSheetSchema } from '@korostelevm/doc-types';
// Function to evaluate a balance sheet
function evaluateBalanceSheet(balanceSheet: BalanceSheetSchema) {
const totalAssets = balanceSheet.assets.total;
const totalLiabilities = balanceSheet.liabilities.total;
console.log(`Total Assets: ${totalAssets}, Total Liabilities: ${totalLiabilities}`);
console.log(`Equity: ${balanceSheet.equity}`);
}
Benefits
- Consistency: Ensures that your data structures align with those used in the main project, reducing errors.
- Maintainability: Regular updates keep your types in sync with any schema changes, facilitating seamless project advancement.
- Validation: Utilize strong typing facilitated by Zod's validation processes, ensuring your data stays robust and consistent.
By integrating these type definitions into your workspace, you enhance the reliability and clarity of your TypeScript applications, making them easier to maintain and evolve alongside your project's growth.
For more documentation and updates, keep an eye on the repository and follow best practices for TypeScript development when utilizing these types in your projects.