15 lines
385 B
TypeScript
15 lines
385 B
TypeScript
|
import type { TInvoice } from '../../interfaces/common.js';
|
||
|
|
||
|
/**
|
||
|
* Base encoder class that defines common encoding functionality
|
||
|
* for all invoice format encoders
|
||
|
*/
|
||
|
export abstract class BaseEncoder {
|
||
|
/**
|
||
|
* Encodes a TInvoice object into XML
|
||
|
* @param invoice TInvoice object to encode
|
||
|
* @returns XML string
|
||
|
*/
|
||
|
abstract encode(invoice: TInvoice): Promise<string>;
|
||
|
}
|