import type { ComponentModel } from '@teambit/component'; import React from 'react'; export type SandboxPermission = 'allow-downloads' | 'allow-forms' | 'allow-modals' | 'allow-orientation-lock' | 'allow-pointer-lock' | 'allow-popups' | 'allow-popups-to-escape-sandbox' | 'allow-presentation' | 'allow-same-origin' | 'allow-scripts' | 'allow-storage-access-by-user-activation' | 'allow-top-navigation' | 'allow-top-navigation-by-user-activation'; export type UseSandboxPermission = (manager: SandboxManager, component?: ComponentModel) => void; export declare class SandboxManager { private permissions; constructor(initialPermissions?: SandboxPermission[]); add(permission: SandboxPermission): this; remove(permission: SandboxPermission): this; has(permission: SandboxPermission): boolean; toString(): string; } export declare function SandboxPermissionExecutor({ usePermissionHook, manager, component, }: { usePermissionHook: UseSandboxPermission; manager: SandboxManager; component?: ComponentModel; }): any; export declare function SandboxPermissionsAggregator({ hooks, onSandboxChange, component, }: { hooks: UseSandboxPermission[]; onSandboxChange?: (sandboxValue: string) => void; component?: ComponentModel; }): React.JSX.Element;