UNPKG

@shopify/app-bridge

Version:

[![Build Status](https://travis-ci.com/Shopify/app-bridge.svg?token=RBRyvqQyN525bnfz7J8p&branch=master)](https://travis-ci.com/Shopify/app-bridge) [![codecov](https://codecov.io/gh/Shopify/app-bridge/branch/master/graph/badge.svg?token=nZ21m39Dr6)](https:

51 lines (50 loc) 2.59 kB
/** * @module Redirect */ import { ClientApplication } from '../../../client'; import { ActionSet } from '../../helper'; import { ComplexDispatch, Group, MetaAction } from '../../types'; import { ErrorAction } from '../../Error'; import { Action, ActionType, AdminPayload, CreateResource, LocalPayload, ProductVariantResource, RemotePayload, ResourceInfo, Section } from './types'; export declare const GROUP: Group; export interface ActionBase extends MetaAction { readonly group: typeof GROUP; } export interface AdminPathAction extends ActionBase { readonly type: typeof ActionType.ADMIN_PATH; readonly payload: LocalPayload; } export interface AdminSectionAction extends ActionBase { readonly type: typeof ActionType.ADMIN_SECTION; readonly payload: AdminPayload; } export interface AppAction extends ActionBase { readonly type: typeof ActionType.APP; readonly payload: LocalPayload; } export interface RemoteAction extends ActionBase { readonly type: typeof ActionType.REMOTE; readonly payload: RemotePayload; } export declare type RedirectAction = AdminPathAction | RemoteAction | AppAction | AdminSectionAction | MetaAction; export declare function isResourcePayload(resource: ResourceInfo | object): resource is ResourceInfo; export declare function isCreateResourcePayload(resource: CreateResource | object): resource is CreateResource; export declare function isProductVariantResourcePayload(resource: ProductVariantResource | object): resource is ProductVariantResource; export declare function isProductVariantCreateResourcePayload(resource: ProductVariantResource | object): resource is ProductVariantResource & { variant: CreateResource; }; export declare function toAdminPath(payload: LocalPayload): AdminPathAction; export declare function toAdminSection(payload: AdminPayload): AdminSectionAction; export declare function toRemote(payload: RemotePayload): RemoteAction; export declare function toApp(payload: LocalPayload): AppAction; export declare function isValidAdminResource(section?: Section): boolean; export declare function validationError(action: RedirectAction): undefined | ErrorAction; export declare class Redirect extends ActionSet implements ComplexDispatch<Section | string> { constructor(app: ClientApplication<any>); readonly payload: { id: string; }; dispatch(action: Action.ADMIN_SECTION, payload: Section): ActionSet; dispatch(action: Action.APP | Action.ADMIN_PATH | Action.REMOTE, payload: string): ActionSet; } export declare function create(app: ClientApplication<any>): Redirect;