import { EventDefinition, HttpClient } from '@wix/sdk-types'; import { ListDefaultTaxGroupsByAppIdsResponse, ListDefaultTaxGroupsByAppIdsResponseNonNullableFields, ListDefaultTaxGroupsResponse, ListDefaultTaxGroupsResponseNonNullableFields, TaxGroup, TaxGroupCreatedEnvelope, TaxGroupDeletedEnvelope, TaxGroupNonNullableFields, TaxGroupUpdatedEnvelope, TaxGroupsQueryBuilder, UpdateTaxGroup } from './billing-v1-tax-group-tax-groups.universal.js'; export declare const __metadata: { PACKAGE_NAME: string; }; export declare function createTaxGroup(httpClient: HttpClient): CreateTaxGroupSignature; interface CreateTaxGroupSignature { /** * Creates a tax group. * * Call Stores Update Product to add the `taxGroupId` to specific products to categorize as a group based on distinct tax treatment. * Wix uses tax groups to calculate tax. * * In addition to tax groups you create, default tax groups are already included in all Wix catalogs. * Call List Default Tax Groups to retrieve them. You can also use the Tax Groups Integration service plugin (REST only) * to create new default tax groups that can be applied directly to an entire catalog of products. * @param - Tax group to create. * @returns Created tax group. */ (taxGroup: TaxGroup): Promise; } export declare function getTaxGroup(httpClient: HttpClient): GetTaxGroupSignature; interface GetTaxGroupSignature { /** * Retrieves a tax group. * @param - ID of the tax group to retrieve. * @returns Retrieved tax group. */ (taxGroupId: string): Promise; } export declare function updateTaxGroup(httpClient: HttpClient): UpdateTaxGroupSignature; interface UpdateTaxGroupSignature { /** * Updates a tax group. * * Each time the tax group is updated, `revision` increments by 1. * The current `revision` must be passed when updating the tax group. * This ensures you're working with the latest tax group and prevents * unintended overwrites. * @param - Tax group ID. * @param - Tax group info. * @returns Updated tax group. */ (_id: string | null, taxGroup: UpdateTaxGroup): Promise; } export declare function deleteTaxGroup(httpClient: HttpClient): DeleteTaxGroupSignature; interface DeleteTaxGroupSignature { /** * Deletes a tax group. * * If a tax group is deleted but the `taxGroupId` is still assigned to a product (see Stores Products API) then the default tax group is used to calculate tax. * @param - ID of the tax group to delete. */ (taxGroupId: string): Promise; } export declare function queryTaxGroups(httpClient: HttpClient): QueryTaxGroupsSignature; interface QueryTaxGroupsSignature { /** * Creates a query to retrieve a list of tax groups. * * The `queryTaxGroups()` function builds a query to retrieve a list of tax groups and returns a `TaxGroupsQueryBuilder` object. * * The returned object contains the query definition, which is typically used to run the query using the `find()` function. * * You can refine the query by chaining `TaxGroupsQueryBuilder` functions onto the query. `TaxGroupsQueryBuilder` functions enable you to sort, filter, and control the results that `queryTaxGroups()` returns. * * `queryTaxGroups()` runs with the following `TaxGroupsQueryBuilder` default that you can override: * + `ascending("_id")` * * The functions that are chained to `queryTaxGroups()` are applied in the order they are called. For example, if you apply `ascending("name")` and then `ascending("_createdDate")`, the results are sorted first by the `"name"`, and then, if there are multiple results with the same `"name"`, the items are sorted by `"_createdDate"`. * * The following `TaxGroupsQueryBuilder` functions are supported for the `queryTaxGroups()` function. For a full description of the tax group object, see the object returned for the `items` property in `TaxGroupsQueryResult`. */ (): TaxGroupsQueryBuilder; } export declare function listDefaultTaxGroups(httpClient: HttpClient): ListDefaultTaxGroupsSignature; interface ListDefaultTaxGroupsSignature { /** * Retrieves a list of default tax groups. * * The default tax groups for a site are inherited by the apps installed on the site. * For example, the Wix Stores app includes a `"Products"` tax group by default. * * Add additional default tax groups with the Tax Groups Integration service plugin (REST only). */ (): Promise; } export declare function listDefaultTaxGroupsByAppIds(httpClient: HttpClient): ListDefaultTaxGroupsByAppIdsSignature; interface ListDefaultTaxGroupsByAppIdsSignature { /** * Retrieves default tax groups for specific apps. * @param - App IDs to retrieve default tax groups for. */ (appIds: string[]): Promise; } export declare const onTaxGroupCreated: EventDefinition; export declare const onTaxGroupDeleted: EventDefinition; export declare const onTaxGroupUpdated: EventDefinition; export { ActionEvent, ApplicationError, BaseEventMetadata, BulkActionMetadata, CreateTaxGroupRequest, CreateTaxGroupResponse, CreateTaxGroupResponseNonNullableFields, CursorPaging, CursorPagingMetadata, Cursors, DeleteTaxGroupRequest, DeleteTaxGroupResponse, DomainEvent, DomainEventBodyOneOf, EntityCreatedEvent, EntityDeletedEvent, EntityUpdatedEvent, EventMetadata, GetTaxGroupRequest, GetTaxGroupResponse, GetTaxGroupResponseNonNullableFields, IdentificationData, IdentificationDataIdOneOf, ItemMetadata, ListDefaultTaxGroupsByAppIdsRequest, ListDefaultTaxGroupsByAppIdsResponse, ListDefaultTaxGroupsByAppIdsResponseNonNullableFields, ListDefaultTaxGroupsByAppIdsResult, ListDefaultTaxGroupsRequest, ListDefaultTaxGroupsResponse, ListDefaultTaxGroupsResponseNonNullableFields, MessageEnvelope, Paging, QueryTaxGroupsRequest, QueryTaxGroupsResponse, QueryTaxGroupsResponseNonNullableFields, QueryV2, QueryV2PagingMethodOneOf, RestoreInfo, SortOrder, Sorting, TaxGroup, TaxGroupCreatedEnvelope, TaxGroupDeletedEnvelope, TaxGroupNonNullableFields, TaxGroupUpdatedEnvelope, TaxGroupsQueryBuilder, TaxGroupsQueryResult, UpdateTaxGroup, UpdateTaxGroupRequest, UpdateTaxGroupResponse, UpdateTaxGroupResponseNonNullableFields, WebhookIdentityType, } from './billing-v1-tax-group-tax-groups.universal.js';