import * as React from 'react'; import EASDK from './EASDK'; import { LinkLikeComponent } from '../UnstyledLink'; import Intl from './Intl'; import Link from './Link'; import StickyManager from './StickyManager'; import { TranslationDictionary } from './types'; export interface Props { /** A locale object or array of locale objects that overrides default translations */ i18n?: TranslationDictionary | TranslationDictionary[]; /** A custom component to use for all links used by Polaris components */ linkComponent?: LinkLikeComponent; /** The API key for your application from the Partner dashboard */ apiKey?: string; /** The current shop’s origin, provided in the session from the Shopify API */ shopOrigin?: string; /** Forces a redirect to the relative admin path when not rendered in an iframe */ forceRedirect?: boolean; /** Prints logs of each message passed through the EASDK */ debug?: boolean; } export interface Context { polaris: { intl: Intl; link: Link; stickyManager: StickyManager; }; easdk?: EASDK; } export default class AppProvider extends React.Component { static childContextTypes: React.ValidationMap; polarisContext: Context; private stickyManager; constructor(props: Props); componentDidMount(): void; componentWillReceiveProps({ i18n, linkComponent, apiKey, shopOrigin, forceRedirect, debug, }: Props): void; getChildContext(): Context; render(): React.ReactElement; }