///
interface Props {
slug: string;
/**
* The path to load within the extension.
*/
path?: string;
/**
* The path of the parent page, i.e. the path of the page that includes this iframe.
*
* This is used for calculating subroutes. By setting this, you effectively enable url tracking in the browser navigation bar.
*
* @example
* "/extension/my-extension-slug"
*/
pathToParent?: string;
version?: string;
/**
* If true, will use hashes for controlling the urls in the extension (/#/).
* @default true
*/
useHashOnUrl?: boolean;
/**
* When true, allows the extension to control the context (secondary) menu of the parent.
*
* Only one extension can control the menu at a a time. If you have 2 extensions rendered and both have "enableMenu" set to true, only
* the last one will have control over the menu.
*/
enableMenu?: boolean;
/**
* An extension may submit data. The submit event can be listened to by providing this function.
*/
onSubmit?: (data: Record) => void;
/**
* An extension may trigger the "cancel" event. This event can be listened to by providing this function.
*/
onCancel?: () => void;
/**
* A initial dataset to the extension. The extension can get this by calling "getInitialData()".
*/
data?: Record;
style?: React.CSSProperties;
className?: string;
}
/**
* Renders an Extension.
*
* ATTENTION: if the slug can change during the execution, provide the slug as the key for this component, otherwise, some features won't
* work for the second extension.
* @param props {@link Props}
* @returns the component.
*/
export declare const Extension: ({ slug, version, path, pathToParent, useHashOnUrl, enableMenu, onCancel, onSubmit, data, style, className }: Props) => import("react/jsx-runtime").JSX.Element;
export {};
//# sourceMappingURL=Extension.d.ts.map