UNPKG

@spree/storefront-api-v2-sdk

Version:

Node module to easily integrate your JavaScript or TypeScript application with Spree API V2. You can create an entirely custom Storefront in JS/TS with this package including one page checkout, Single Page Apps, PWAs and so on

152 lines (151 loc) 4.34 kB
import type { IAddress } from './attributes/Address'; import type { JsonApiDocument, JsonApiListResponse, JsonApiSingleResponse } from './JsonApi'; import type { IQuery } from './Query'; import type { IRelationships } from './Relationships'; import type { ResultResponse } from './ResultResponse'; import type { WithCommonOptions } from './WithCommonOptions'; export interface AccountAttr extends JsonApiDocument { data: { id: string; type: string; attributes: { email: string; store_credits: number; completed_orders: number; }; relationships: IRelationships; }; } export interface IAccount extends JsonApiSingleResponse { data: AccountAttr; } export interface IAccountResult extends ResultResponse<IAccount> { } export interface IAccountConfirmation { data: { state: string; }; } export interface IAccountConfirmationResult extends ResultResponse<IAccountConfirmation> { } /** * @deprecated Use {@link ForgotPasswordOptions} instead. */ export interface ForgotPasswordParams extends IQuery { user: { email: string; }; } /** * @deprecated Use {@link ResetPasswordOptions} instead. */ export interface ResetPasswordParams extends IQuery { user: { password: string; password_confirmation: string; }; } /** * @deprecated Use {@link CreateAddressOptions} instead. */ export interface AccountAddressParams extends IQuery { address: IAddress; } export interface AccountAddressAttr extends JsonApiDocument { attributes: IAddress; } export interface AccountAddressResponse extends JsonApiSingleResponse { data: AccountAddressAttr; } export interface AccountAddressesResponse extends JsonApiListResponse { data: AccountAddressAttr[]; } export interface AccountAddressResult extends ResultResponse<AccountAddressResponse> { } export interface AccountAddressesResult extends ResultResponse<AccountAddressesResponse> { } export declare type AccountInfoOptions = WithCommonOptions<{ suggestToken: true; suggestQuery: true; }>; export declare type CreditCardsListOptions = WithCommonOptions<{ suggestToken: true; onlyAccountToken: true; suggestQuery: true; }>; export declare type DefaultCreditCardOptions = WithCommonOptions<{ suggestToken: true; onlyAccountToken: true; suggestQuery: true; }>; export declare type RemoveCreditCardOptions = WithCommonOptions<{ suggestToken: true; onlyAccountToken: true; suggestQuery: true; }, { id: string; }>; export declare type CompletedOrdersListOptions = WithCommonOptions<{ suggestToken: true; onlyAccountToken: true; suggestQuery: true; }>; export declare type CompletedOrderOptions = WithCommonOptions<{ suggestToken: true; onlyAccountToken: true; suggestQuery: true; }, { order_number: string; }>; export declare type CreateOptions = WithCommonOptions<null, { user: { email: string; password: string; password_confirmation: string; }; }>; export declare type ConfirmOptions = WithCommonOptions<null, { confirmation_token: string; }>; export declare type ForgotPasswordOptions = WithCommonOptions<null, ForgotPasswordParams>; export declare type ResetPasswordOptions = WithCommonOptions<null, ResetPasswordParams & { reset_password_token: string; }>; export declare type UpdateOptions = WithCommonOptions<{ suggestToken: true; onlyAccountToken: true; }, { user: { email: string; password: string; password_confirmation: string; }; }>; export declare type AddressesListOptions = WithCommonOptions<{ suggestToken: true; onlyAccountToken: true; }>; export declare type ShowAddressOptions = WithCommonOptions<{ suggestToken: true; onlyAccountToken: true; suggestQuery: true; }, { id: string; }>; export declare type CreateAddressOptions = WithCommonOptions<{ suggestToken: true; onlyAccountToken: true; suggestQuery: true; }, AccountAddressParams>; export declare type RemoveAddressOptions = WithCommonOptions<{ suggestToken: true; onlyAccountToken: true; }, { id: string; }>; export declare type UpdateAddressOptions = WithCommonOptions<{ suggestToken: true; onlyAccountToken: true; }, AccountAddressParams & { id: string; }>;