@simpleapps-com/augur-api
Version:
TypeScript client library for Augur microservices API endpoints
106 lines • 3.76 kB
TypeScript
import type { CommerceClient } from '../client';
import type { CartLineAddRequest, CartLineUpdateRequest, CartLineModifyResponse, CartLineDeleteResponse } from '../schemas';
type ExecuteRequest = CommerceClient['executeRequest'];
/**
* Creates the cartLine resource methods
* OpenAPI Path: /cart-line → cartLine.*
* @description Cart line management for individual items within shopping carts
*/
export declare function createCartLineResource(executeRequest: ExecuteRequest): {
/**
* Retrieve all line items for a specific cart
* @fullPath api.commerce.cartLine.get
* @service commerce
* @domain cart-management
* @dataMethod cartLineData.get
* @discoverable true
*/
get: (cartHdrUid: number) => Promise<{
params: Record<string, unknown> | unknown[];
data: import("zod").objectInputType<{
lineNo: import("zod").ZodNumber;
}, import("zod").ZodTypeAny, "passthrough">[];
options: Record<string, unknown> | unknown[];
status: number;
message: string;
count: number;
total: number;
totalResults: number;
}>;
/**
* Remove all line items from the cart
* @fullPath api.commerce.cartLine.delete
* @service commerce
* @domain cart-management
* @dataMethod cartLineData.delete
* @discoverable true
*/
delete: (cartHdrUid: number) => Promise<CartLineModifyResponse>;
/**
* Add Operations
*/
add: {
/**
* Add one or more items to the cart
* @fullPath api.commerce.cartLine.add.create
* @service commerce
* @domain cart-management
* @dataMethod cartLineData.add.create
* @discoverable true
*/
create: (cartHdrUid: number, items: CartLineAddRequest) => Promise<CartLineModifyResponse>;
};
/**
* Lines Operations - individual line item management
*/
lines: {
/**
* Remove a specific line item from the cart
* @fullPath api.commerce.cartLine.lines.delete
* @service commerce
* @domain cart-management
* @dataMethod cartLineData.lines.delete
* @discoverable true
*/
delete: (cartHdrUid: number, lineNo: number) => Promise<CartLineDeleteResponse>;
};
/**
* Update Operations
*/
update: {
/**
* Update quantities or details for existing cart line items
* @fullPath api.commerce.cartLine.update.create
* @service commerce
* @domain cart-management
* @dataMethod cartLineData.update.create
* @discoverable true
*/
create: (cartHdrUid: number, items: CartLineUpdateRequest) => Promise<CartLineModifyResponse>;
};
};
/**
* Creates the cartLineData resource methods (data-only versions)
*/
export declare function createCartLineDataResource(cartLine: ReturnType<typeof createCartLineResource>): {
get: (cartHdrUid: number) => Promise<import("zod").objectInputType<{
lineNo: import("zod").ZodNumber;
}, import("zod").ZodTypeAny, "passthrough">[]>;
delete: (cartHdrUid: number) => Promise<boolean>;
add: {
create: (cartHdrUid: number, items: CartLineAddRequest) => Promise<boolean>;
};
lines: {
delete: (cartHdrUid: number, lineNo: number) => Promise<{
message: string;
success: boolean;
}>;
};
update: {
create: (cartHdrUid: number, items: CartLineUpdateRequest) => Promise<boolean>;
};
};
export type CartLineResource = ReturnType<typeof createCartLineResource>;
export type CartLineDataResource = ReturnType<typeof createCartLineDataResource>;
export {};
//# sourceMappingURL=cart-line.d.ts.map