import { ListMutable, MapMutable } from '..';
import Model from '../dataModel/model';
import { Hook } from '../hooks/interface';
import { Context, Plugin } from './interface';
export default class UpdatePlugin implements Plugin {
    private whereInputPlugin;
    private baseTypePlugin;
    private createPlugin;
    private hook;
    constructor({ hook, }: {
        hook: Hook;
    });
    setPlugins(plugins: Plugin[]): void;
    visitModel(model: Model, context: Context): void;
    resolveInMutation({ model, dataSource }: {
        model: Model;
        dataSource: ListMutable & MapMutable;
    }): any;
    private generateUpdateInput;
    private static getInputName;
    private createMutation;
    private setUpdatedAtDirective;
}
