/// <reference types="react" />
import { ReactElement } from '../../@declares';
import { KeyValueDict } from 'jmini';
import { InputTypes } from '.';
declare namespace OptionalInputWrapper {
    type Input = {
        componentID?: string;
        children: React.FC<any>;
        states: any;
    };
}
export declare const OptionalInputWrapper: React.FC<OptionalInputWrapper.Input>;
declare namespace BoxWrapper {
    type Input = {
        val_status: any;
        set_status: React.Dispatch<React.SetStateAction<any>>;
        val_validate: InputTypes.Validation.Result;
        states: any;
        children: ReactElement;
    };
}
export declare const BoxWrapper: React.FC<BoxWrapper.Input>;
export declare const CoreEffects: {
    DefaultStatus: (componentID: string, value: any) => InputTypes.Status.Plain<any>;
    CommonEffects: <T = KeyValueDict<any>>(props: {
        type: InputTypes.Type;
        states: KeyValueDict;
        val_status: InputTypes.Status.Plain;
        set_status: React.Dispatch<React.SetStateAction<InputTypes.Status.Plain & T>>;
        val_validate: InputTypes.Validation.Result;
        set_validate: React.Dispatch<React.SetStateAction<InputTypes.Validation.Result>>;
        SystemValidation: InputTypes.Validation.System;
        ExtraOverrideStates?: KeyValueDict;
    }) => void;
    ValidationCheck: (p: {
        val_status: InputTypes.Status.Plain;
        SystemValidation: InputTypes.Validation.System;
        states: any;
        set_validate: React.Dispatch<React.SetStateAction<InputTypes.Validation.Result>>;
    }) => void;
    SubmitForm: (event: React.KeyboardEvent, formName: string) => boolean;
    isShowValidation: (val_validate: InputTypes.Validation.Result, val_status: InputTypes.Status.Plain, checkValidationAtFirst: boolean) => boolean;
};
export declare const DefaultBoxishStyles: <T = any>(p: any) => T;
export {};
