import { Wtbl } from '../../../document';
import { Region, RegionOptions } from '../../base/Region';
import { RegionJson } from '../../../types';
import { DataGroup2DRegion, DataGroup2DRegionOptions } from './DataGroup2DRegion';
export type LinkSubTableWidgetPropsMeta = {
    /** 引用填充（撑满固定表）*/
    autoFill: boolean;
    /** 关联主键 */
    refColField: string | undefined;
    /** 动态表关联关系建立 */
    refRowField: string | undefined;
    [key: string]: any;
};
export type LinkSubTableWidgetMeta = {
    props: LinkSubTableWidgetPropsMeta;
};
export type LinkSubTableRegionOptions = RegionOptions & {
    name: string;
    valuePath: string;
    widgetMeta: LinkSubTableWidgetMeta;
    itemRegion?: DataGroup2DRegion;
};
export type LinkSubTableRegionJson = RegionJson & {
    name: string;
    valuePath: string;
    widgetMeta: LinkSubTableWidgetMeta;
    itemRegion?: any;
};
/**
 * 带「主字段:关联字段」valuePath 的子表基类（二维表、检验表共用）
 */
export declare abstract class LinkSubTableRegion extends Region {
    name: string;
    valuePath: string;
    widgetMeta: LinkSubTableWidgetMeta;
    itemRegion?: DataGroup2DRegion;
    constructor(options: LinkSubTableRegionOptions);
    get subFieldKey(): string;
    get linkFieldKey(): string;
    get subValuePath(): string;
    get linkValuePath(): string;
    protected toLinkSubTableJSON(): LinkSubTableRegionJson;
    protected static restoreItemRegion(region: LinkSubTableRegion, json: LinkSubTableRegionJson, table: Wtbl): void;
    /** 从 JSON 还原关联子表（二维表 / 检验表子类共用） */
    protected static fromLinkSubTableJSON<T extends LinkSubTableRegion>(Ctor: new (options: LinkSubTableRegionOptions) => T, json: LinkSubTableRegionJson, table: Wtbl): T;
    setItemRegion(options: Omit<DataGroup2DRegionOptions, 'table'>): DataGroup2DRegion;
    removeItemRegion(): void;
}
