import * as Enums from '../enums/index'; import { NexusParameterDetailModel } from "./NexusParameterDetailModel"; /** * Represents a declaration of nexus within a particular taxing jurisdiction. To create a nexus declaration for your company, you must first call the Definitions API `ListNexus` to obtain a list of Avalara-defined nexus. Once you have determined which nexus you wish to declare, you should customize only the user-selectable fields in this object. The user selectable fields for the nexus object are `companyId`, `effectiveDate`, `endDate`, `localNexusTypeId`, `taxId`, `nexusTypeId`, `hasPermanentEstablishment`, and `isSellerImporterOfRecord`. When calling `CreateNexus` or `UpdateNexus`, all values in your nexus object except for the user-selectable fields must match an Avalara-defined system nexus object. You can retrieve a list of Avalara-defined system nexus objects by calling `ListNexus`. If any data does not match, AvaTax may not recognize your nexus declaration. * @export * @class NexusModel */ export declare class NexusModel { /** * @type {number} * @memberof NexusModel */ id?: number | undefined; /** * @type {number} * @memberof NexusModel */ companyId?: number | undefined; /** * @type {string} * @memberof NexusModel */ country: string; /** * @type {string} * @memberof NexusModel */ region: string; /** * @type {Enums.JurisTypeId} * @memberof NexusModel */ jurisTypeId?: Enums.JurisTypeId | undefined; /** * @type {Enums.JurisdictionType} * @memberof NexusModel */ jurisdictionTypeId: Enums.JurisdictionType; /** * @type {string} * @memberof NexusModel */ jurisCode: string; /** * @type {string} * @memberof NexusModel */ jurisName: string; /** * @type {Date} * @memberof NexusModel */ effectiveDate?: Date | undefined; /** * @type {Date} * @memberof NexusModel */ endDate?: Date | undefined; /** * @type {string} * @memberof NexusModel */ shortName?: string | undefined; /** * @type {string} * @memberof NexusModel */ signatureCode?: string | undefined; /** * @type {string} * @memberof NexusModel */ stateAssignedNo?: string | undefined; /** * @type {Enums.NexusTypeId} * @memberof NexusModel */ nexusTypeId?: Enums.NexusTypeId | undefined; /** * @type {Enums.Sourcing} * @memberof NexusModel */ sourcing?: Enums.Sourcing | undefined; /** * @type {boolean} * @memberof NexusModel */ hasLocalNexus?: boolean | undefined; /** * @type {Enums.LocalNexusTypeId} * @memberof NexusModel */ localNexusTypeId?: Enums.LocalNexusTypeId | undefined; /** * @type {boolean} * @memberof NexusModel */ hasPermanentEstablishment?: boolean | undefined; /** * @type {string} * @memberof NexusModel */ taxId?: string | undefined; /** * @type {boolean} * @memberof NexusModel */ streamlinedSalesTax?: boolean | undefined; /** * @type {boolean} * @memberof NexusModel */ isSSTActive?: boolean | undefined; /** * @type {Date} * @memberof NexusModel */ createdDate?: Date | undefined; /** * @type {number} * @memberof NexusModel */ createdUserId?: number | undefined; /** * @type {Date} * @memberof NexusModel */ modifiedDate?: Date | undefined; /** * @type {number} * @memberof NexusModel */ modifiedUserId?: number | undefined; /** * @type {string} * @memberof NexusModel */ taxTypeGroup?: string | undefined; /** * @type {string} * @memberof NexusModel */ nexusTaxTypeGroup?: string | undefined; /** * @type {number} * @memberof NexusModel */ taxAuthorityId?: number | undefined; /** * @type {boolean} * @memberof NexusModel */ isSellerImporterOfRecord?: boolean | undefined; /** * @type {string} * @memberof NexusModel */ taxName?: string | undefined; /** * @type {NexusParameterDetailModel[]} * @memberof NexusModel */ parameters?: NexusParameterDetailModel[] | undefined; /** * @type {boolean} * @memberof NexusModel */ taxableNexus?: boolean | undefined; }