import { IKeyObjectValue } from "../../type";
import { VInsType } from "./enum";
interface IBase {
    startColumn: number;
    startLineNumber: number;
    endColumn: number;
    endLineNumber: number;
}
export declare enum VMarkerSeverity {
    Hint = 1,
    Info = 2,
    Warning = 4,
    Error = 8
}
export interface IPosition {
    readonly lineNumber: number;
    readonly column: number;
    reName?: string;
}
export interface IRange {
    readonly startLineNumber: number;
    readonly startColumn: number;
    readonly endLineNumber: number;
    readonly endColumn: number;
}
export interface IError extends IBase {
    message: string;
    type?: VMarkerSeverity;
}
export type WithRequired<T, K extends keyof T> = Omit<T, K> & Required<Pick<T, K>>;
export interface IDrawComponent {
    type: VInsType;
    id: string;
    data: IKeyObjectValue;
    _suffix: string;
    preId: string;
    isDraw: boolean;
}
export {};
