import Validator from "@dikac/t-validator/validator"; import Validatable from "@dikac/t-validatable/validatable"; import { O } from "ts-toolbelt"; import ValidatorContainer from "@dikac/t-validator/validator/validator"; import MessageBase from "@dikac/t-message/message"; import Value from "@dikac/t-value/value"; import RecordValueCallbackParameters from "./record-value-callback-parameters"; export declare type RecordValueCallbackArgument = Record, ValidatorType extends Validator> = Validator>, Result extends Partial> = Partial>, ValidatableType extends Validatable = Validatable> = Value & ValidatorContainer & MessageBase<(result: Result) => MessageType> & { map: (argument: Value & ValidatorContainer) => Result; } & { validation: (result: Result) => ValidatableType; }; export default class RecordValueCallbackParameter = Record, ValidatorType extends Validator> = Validator>, Result extends Partial> = Partial>, ValidatableType extends Validatable = Validatable> extends RecordValueCallbackParameters { constructor({ value, validator, map, validation, message }: RecordValueCallbackArgument); }