import { Action as BaseAction } from 'redux'; import { Features, Group, MetaAction } from '@shopify/app-bridge-core/actions'; import { RequestUpdateOptions } from '@shopify/app-bridge-core/actions/Features/types'; import type { FeaturesState, FeaturesAvailable } from '@shopify/app-bridge-core/client'; export interface UpdateAction extends MetaAction { group: typeof Group.Features; readonly type: typeof Features.Action.UPDATE; readonly payload: FeaturesState>; } export interface RequestUpdateAction extends MetaAction { group: typeof Group.Features; readonly type: typeof Features.Action.REQUEST_UPDATE; readonly payload: RequestUpdateOptions; } export interface LegacyFeaturesAction { [key: string]: boolean; } export type LegacyFeaturesAvailable = { [key in Group]?: LegacyFeaturesAction; }; export interface LegacyUpdateAction extends BaseAction { readonly type: typeof Features.Action.UPDATE; readonly payload: LegacyFeaturesAvailable; } export declare function update(payload: FeaturesState>): UpdateAction; export declare function requestUpdate(payload: RequestUpdateOptions): RequestUpdateAction;