myinvois-sdk
Version:
TypeScript SDK for interacting with the Malaysia e-invoicing system (MyInvois) API
89 lines (88 loc) • 2.79 kB
TypeScript
import { HttpClient } from '../utils/http-client';
import { AuthService } from './auth-service';
import { MyInvoisConfig } from '../config';
/**
* Service for retrieving code tables from MyInvois API
*/
export declare class CodeService {
private httpClient;
private authService;
private config;
private codeTablesCache;
/**
* Creates a new code service
* @param httpClient The HTTP client to use
* @param authService The authentication service to use
* @param config The MyInvois configuration
*/
constructor(httpClient: HttpClient, authService: AuthService, config: MyInvoisConfig);
/**
* Get the transaction URL
* @returns The transaction URL
*/
private getTransactionUrl;
/**
* Get a code table from the API
* @param codeType The type of code table to retrieve
* @returns A promise resolving to the code table
*/
getCodeTable(codeType: string): Promise<any>;
/**
* Get all document types
* @param authTIN The TIN to use for authentication (optional)
* @returns A promise resolving to the document types
*/
getDocumentTypes(authTIN?: string): Promise<any>;
/**
* Get all currency codes
* @param authTIN The TIN to use for authentication (optional)
* @returns A promise resolving to the currency codes
*/
getCurrencyCodes(authTIN?: string): Promise<any>;
/**
* Get all state codes
* @returns A promise resolving to the state codes
*/
getStateCodes(): Promise<any>;
/**
* Get all country codes
* @param authTIN The TIN to use for authentication (optional)
* @returns A promise resolving to the country codes
*/
getCountryCodes(authTIN?: string): Promise<any>;
/**
* Get all tax types
* @returns A promise resolving to the tax types
*/
getTaxTypes(): Promise<any>;
/**
* Get all industry codes (MSIC)
* @returns A promise resolving to the industry codes
*/
getMSICCodes(): Promise<any>;
/**
* Get all unit codes
* @returns A promise resolving to the unit codes
*/
getUnitCodes(): Promise<any>;
/**
* Get all payment means codes
* @returns A promise resolving to the payment means codes
*/
getPaymentMethods(): Promise<any>;
/**
* Get all commodity classification codes
* @returns A promise resolving to the commodity classification codes
*/
getClassificationCodes(): Promise<any>;
/**
* Get all tax codes
* @param authTIN The TIN to use for authentication (optional)
* @returns A promise resolving to the tax codes
*/
getTaxCodes(authTIN?: string): Promise<any>;
/**
* Clear the code tables cache
*/
clearCache(): void;
}