@apideck/node
Version:
Apideck Node.js SDK
176 lines (175 loc) • 4.6 kB
TypeScript
/**
* Apideck
* The Apideck OpenAPI Spec: SDK Optimized
*
* The version of the OpenAPI document: 10.13.0
* Contact: support@apideck.com
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { Currency } from './Currency';
import { CustomField } from './CustomField';
import { ExpenseLineItem } from './ExpenseLineItem';
import { LinkedTaxRate } from './LinkedTaxRate';
import { PassThroughBody } from './PassThroughBody';
/**
*
* @export
* @interface Expense
*/
export interface Expense {
/**
* The date of the transaction - YYYY:MM::DDThh:mm:ss.sTZD
* @type {Date}
* @memberof Expense
*/
transaction_date: Date | null;
/**
* The unique identifier for the ledger account that this expense should be credited to.
* @type {string}
* @memberof Expense
*/
account_id: string;
/**
* Expense line items linked to this expense.
* @type {Array<ExpenseLineItem>}
* @memberof Expense
*/
line_items: Array<ExpenseLineItem>;
/**
* A unique identifier for an object.
* @type {string}
* @memberof Expense
*/
readonly id?: string;
/**
* Number.
* @type {string}
* @memberof Expense
*/
number?: string | null;
/**
* The ID of the customer this entity is linked to. Used for expenses that should be marked as billable to customers.
* @type {string}
* @memberof Expense
*/
customer_id?: string;
/**
* The ID of the supplier this entity is linked to.
* @type {string}
* @memberof Expense
*/
supplier_id?: string;
/**
* The company or subsidiary id the transaction belongs to
* @type {string}
* @memberof Expense
*/
company_id?: string | null;
/**
* The ID of the department this expense is linked to.
* @type {string}
* @memberof Expense
*/
department_id?: string;
/**
* The type of payment for the expense.
* @type {string}
* @memberof Expense
*/
payment_type?: ExpensePaymentType;
/**
*
* @type {Currency}
* @memberof Expense
*/
currency?: Currency | null;
/**
* Currency Exchange Rate at the time entity was recorded/generated.
* @type {number}
* @memberof Expense
*/
currency_rate?: number | null;
/**
* The type of expense.
* @type {string}
* @memberof Expense
*/
type?: ExpenseType;
/**
* The memo of the expense.
* @type {string}
* @memberof Expense
*/
memo?: string | null;
/**
*
* @type {LinkedTaxRate}
* @memberof Expense
*/
tax_rate?: LinkedTaxRate;
/**
* The total amount of the expense line item.
* @type {number}
* @memberof Expense
*/
total_amount?: number | null;
/**
*
* @type {Array<CustomField>}
* @memberof Expense
*/
custom_fields?: Array<CustomField>;
/**
* When custom mappings are configured on the resource, the result is included here.
* @type {object}
* @memberof Expense
*/
readonly custom_mappings?: object | null;
/**
* The date and time when the object was last updated.
* @type {Date}
* @memberof Expense
*/
readonly updated_at?: Date | null;
/**
* The date and time when the object was created.
* @type {Date}
* @memberof Expense
*/
readonly created_at?: Date | null;
/**
* A binary value used to detect updates to a object and prevent data conflicts. It is incremented each time an update is made to the object.
* @type {string}
* @memberof Expense
*/
row_version?: string | null;
/**
*
* @type {PassThroughBody}
* @memberof Expense
*/
pass_through?: PassThroughBody;
}
/**
* @export
* @enum {string}
*/
export declare enum ExpensePaymentType {
cash = "cash",
check = "check",
credit_card = "credit_card"
}
/**
* @export
* @enum {string}
*/
export declare enum ExpenseType {
expense = "expense",
refund = "refund"
}
export declare function ExpenseFromJSON(json: any): Expense;
export declare function ExpenseFromJSONTyped(json: any, ignoreDiscriminator: boolean): Expense;
export declare function ExpenseToJSON(value?: Expense | null): any;