@shopify/app-bridge-host
Version:
App Bridge Host contains components and middleware to be consumed by the app's host, as well as the host itself. The middleware and `Frame` component are responsible for facilitating communication between the client and host, and used to act on actions se
44 lines (43 loc) • 2.77 kB
TypeScript
import { Reducer } from 'redux';
import * as Actions from '@shopify/app-bridge-core/actions';
export interface ReducerMap {
[key: string]: Reducer;
}
export interface InitialStateMap {
[key: string]: any;
}
/**
* A utility to reset the reducer state when `APICLIENT::LOAD`
* or `APICLIENT::UNLOAD` is dispatched
* @internal
* @param reducer - the reducer which should be reset
* @param initialState - an option value the state should be set to when it's reset
* */
export declare function resetAppReducer(reducer: Reducer, initialState?: any): Reducer;
/**
* A utility to reset the reducer state when `PRIVATE_APP::RESET` is dispatched
* @internal
* @param reducer - the reducer which should be reset
* */
export declare function resetStateReducer(reducer: Reducer): Reducer;
/**
* A utility to reset the state of a reducer when an action is dispatched
* @internal
* @param reducer - the reducer which should be reset
* @param type - the action type
* @param initialState - an option value the state should be set to when it's reset
*/
export declare function resetReducer(reducer: Reducer, type: string, initialState?: any): Reducer;
/**
* Wrap multiple reducers in a given wrapper function
* @internal
* @param reducers - a reducer map object
* @param wrapper - the function to wrap the reducer map object
* @param initialState - an optional value map for the state to be given to the wrapper
*/
export declare function wrapReducers<T extends ReducerMap>(reducers: T, wrapper: (reducer: Reducer, initialState?: InitialStateMap) => Reducer, initialState?: InitialStateMap): T;
/**
* Return all action types for an action group name
* @internal
*/
export declare function getGroupActionType(group: Actions.Group): (typeof Actions.History.Action | typeof Actions.Redirect.Action)[] | (typeof Actions.ResourcePicker.Action)[] | (typeof Actions.unstable_Picker.Action)[] | (typeof Actions.NavigationMenu.Action | typeof Actions.ChannelMenu.Action)[] | (typeof Actions.WebVitals.Action | typeof Actions.Performance.Action | typeof Actions.Features.Action | typeof Actions.LeaveConfirmation.Action | typeof Actions.FeedbackModal.Action | typeof Actions.Cart.Action | typeof Actions.TitleBar.Action | typeof Actions.Pos.Action | typeof Actions.SessionToken.Action | typeof Actions.Error.Action | typeof Actions.ContextualSaveBar.Action | typeof Actions.Fullscreen.Action | typeof Actions.Toast.Action | typeof Actions.AuthCode.Action | typeof Actions.Share.Action | typeof Actions.Scanner.Action | typeof Actions.Print.Action | typeof Actions.Button.Action | typeof Actions.ButtonGroup.Action | typeof Actions.Client.Action | typeof Actions.Loading.Action | typeof Actions.MarketingExternalActivityTopBar.Action | typeof Actions.Modal.Action)[];