import type { WidgetConfig } from '../../../../../domains/widgets/components/widget/types.js';
import type { DataSchemaContext, NlqTranslationInput, NlqTranslationResult } from '../../../types.js';
import type { DataSourceJSON } from '../../types.js';
import type { WidgetMeta } from './to-widget-props.js';
type WidgetEnvelopeJSON = {
    readonly id: string;
    readonly title?: string;
    readonly description?: string;
    readonly dataSource?: DataSourceJSON;
    readonly config?: WidgetConfig;
    readonly highlightSelectionDisabled?: boolean;
};
/**
 * Strips widget envelope fields and delegates to a chart/pivot sub-translator,
 * then maps component props to widget props with metadata.
 *
 * @internal
 */
export declare const translateEnvelopeWidgetFromJSON: <TWidgetJSON extends WidgetEnvelopeJSON, TPayload, TComponentProps, TWidgetProps>(widgetJSON: TWidgetJSON, context: DataSchemaContext, translate: (input: NlqTranslationInput<TPayload, DataSchemaContext>) => NlqTranslationResult<TComponentProps>, toWidgetProps: (props: TComponentProps, meta: WidgetMeta) => TWidgetProps) => NlqTranslationResult<TWidgetProps>;
export {};
