import { BasePlugin } from '../../base/BasePlugin';
import { BuildAddRelationFormContext, BuildModelFormRelationContext } from '../../base/PluginInterface';
import { FormSchema, ModelItem, RelationMode } from '../../type';
import type { IFormStore } from 'amis-core';
export declare class RelationPlugin extends BasePlugin {
    static id: string;
    static order: number;
    makeFormChangeHandler(context: BuildAddRelationFormContext | BuildModelFormRelationContext): {
        canSync: boolean;
        updateKeys: (relationMode: RelationMode, target: ModelItem, form: IFormStore) => void;
        cleanKeys: (originRelationMode: RelationMode, form: IFormStore) => void;
    };
    buildAddRelationForm(schema: FormSchema, context: BuildAddRelationFormContext): void;
    buildModelRelationForm(schema: FormSchema, context: BuildModelFormRelationContext): Promise<void>;
}
