/** * The back in stock settings object holds information related to the state of collecting back in stock * notification requests. */ export interface BackInStockSettings { /** * Information about collecting customer requests to receive * back in stock notifications. */ collectionStates?: BackInStockCollectionState[]; } export interface BackInStockCollectionState { /** ID of the app to receive notification requests for. */ appId?: string; /** Whether to collect requests for items from this app. */ collectingRequests?: boolean; } export interface StartCollectingRequestsRequest { /** ID of the app to start accepting notification requests for. */ appId: string; } export interface StartCollectingRequestsResponse { /** Back in stock settings info. */ settings?: BackInStockSettings; } export interface StopCollectingRequestsRequest { /** ID of the app to stop accepting notification requests for. */ appId: string; } export interface StopCollectingRequestsResponse { /** Back in stock settings info. */ settings?: BackInStockSettings; } export interface GetSettingsRequest { } export interface GetSettingsResponse { /** Retrieved back in stock request settings. */ settings?: BackInStockSettings; } interface BackInStockCollectionStateNonNullableFields { appId: string; collectingRequests: boolean; } interface BackInStockSettingsNonNullableFields { collectionStates: BackInStockCollectionStateNonNullableFields[]; } export interface StartCollectingRequestsResponseNonNullableFields { settings?: BackInStockSettingsNonNullableFields; } export interface StopCollectingRequestsResponseNonNullableFields { settings?: BackInStockSettingsNonNullableFields; } export interface GetSettingsResponseNonNullableFields { settings?: BackInStockSettingsNonNullableFields; } /** * Sets `settings.collectionStates.collectingRequests` to `true` for given `appId`. * * When the collection state is set to `true`, collecting requests is enabled and customers may request * notifications for out of stock products. While collecting is enabled, customers see a "Notify When Available" * button on out-of-stock items. Customers can click the button to enter their email address, which creates the * notification request. * @param appId - ID of the app to start accepting notification requests for. * @public * @documentationMaturity preview * @requiredField appId * @permissionId ECOM.MODIFY_BACK_IN_STOCK_NOTIFICATION_SETTINGS * @permissionScope Manage Stores - all permissions * @permissionScopeId SCOPE.DC-STORES-MEGA.MANAGE-STORES * @applicableIdentity APP * @fqn com.wixpress.ecom.back.in.stock.BackInStockSettingsService.StartCollectingRequests */ export declare function startCollectingRequests(appId: string): Promise; /** * Sets `settings.collectionStates.collectingRequests` to `false` for given `appId`. * * When the collection state is set to `false`, collecting notification requests is disabled. * @param appId - ID of the app to stop accepting notification requests for. * @public * @documentationMaturity preview * @requiredField appId * @permissionId ECOM.MODIFY_BACK_IN_STOCK_NOTIFICATION_SETTINGS * @permissionScope Manage Stores - all permissions * @permissionScopeId SCOPE.DC-STORES-MEGA.MANAGE-STORES * @applicableIdentity APP * @fqn com.wixpress.ecom.back.in.stock.BackInStockSettingsService.StopCollectingRequests */ export declare function stopCollectingRequests(appId: string): Promise; /** * Retrieves back in stock request settings. * @public * @documentationMaturity preview * @permissionId ECOM.READ_BACK_IN_STOCK_NOTIFICATION_SETTINGS * @applicableIdentity MEMBER * @applicableIdentity VISITOR * @fqn com.wixpress.ecom.back.in.stock.BackInStockSettingsService.GetSettings */ export declare function getSettings(): Promise; export {};