import { provide, inject, computed } from 'vue';
import { defaultValidateMessages } from './utils/messages.mjs';

const FormContextKey = Symbol("formContextKey");
function useProvideForm(state) {
  provide(FormContextKey, state);
}
function useInjectForm() {
  return inject(FormContextKey, {
    name: computed(() => void 0),
    labelAlign: computed(() => "right"),
    vertical: computed(() => false),
    addField: (_eventKey, _field) => {
    },
    removeField: (_eventKey) => {
    },
    model: computed(() => void 0),
    rules: computed(() => void 0),
    colon: computed(() => void 0),
    labelWrap: computed(() => void 0),
    labelCol: computed(() => void 0),
    requiredMark: computed(() => false),
    validateTrigger: computed(() => void 0),
    onValidate: () => {
    },
    validateMessages: computed(() => defaultValidateMessages)
  });
}
const FormItemPrefixContextKey = Symbol(
  "formItemPrefixContextKey"
);
function useProvideFormItemPrefix(state) {
  provide(FormItemPrefixContextKey, state);
}
function useInjectFormItemPrefix() {
  return inject(FormItemPrefixContextKey, {
    prefixCls: computed(() => "")
  });
}

export { FormContextKey, FormItemPrefixContextKey, useInjectForm, useInjectFormItemPrefix, useProvideForm, useProvideFormItemPrefix };
//# sourceMappingURL=context.mjs.map
