import * as CreationProject1 from "../../creation-project-1/type";
import * as CreationProject2 from "../../creation-project-2";
import { MethodBlock, MethodBlockParam, StandardMethodBlock } from "../types";
import { ArrayType } from "./array-type";
export declare class MutatorType<T extends {} = Record<string, unknown>> extends ArrayType<T> {
    readonly block: StandardMethodBlock;
    readonly separators: (MethodBlockParam | string)[];
    /**
     * @deprecated 请使用 separators 代替。
     */
    readonly separator: string;
    readonly min: number;
    readonly max: number;
    readonly defaultNumber: number;
    readonly transformMin: number;
    readonly transformMax: number;
    constructor({ block, separators, separator, min, max, defaultNumber, transformMin, transformMax }: {
        block: MethodBlock;
        separators?: (MethodBlockParam | string)[] | null | undefined;
        /**
         * @deprecated 请使用 separators 代替。
         */
        separator?: string | null | undefined;
        min?: number | null | undefined;
        max?: number | null | undefined;
        defaultNumber?: number | null | undefined;
        transformMin?: number | null | undefined;
        transformMax?: number | null | undefined;
    });
    toCreationProject1MethodParamValueTypes(this: this): CreationProject1.MutatorTypes;
    toCreationProject2MethodParamValueTypes(this: this): CreationProject2.MutatorTypes;
}
