Extend properties 
Regle offers a way to extend the default validation properties with defineRegleConfig.
For more information about global config check here
Extending field properties 
ts
import { defineRegleConfig } from '@regle/core';
const { useRegle } = defineRegleConfig({
  shortcuts: {
    fields: {
      $isRequired: (field) => field.$rules.required?.$active ?? false;
    }
  }
});
const { r$ } = useRegle({ name: '' }, {
  name: {
    required
  }
})
r$.name.$isRe
Extending nested object properties 
ts
import { defineRegleConfig } from '@regle/core';
const { useRegle } = defineRegleConfig({
  shortcuts: {
    nested: {
      $isEmpty: (nest) => Object.keys(nest.$fields).length === 0;
    }
  }
});
const { r$ } = useRegle({ user: {} } as { user: { firstName?: string, lastName?: string } }, {
  user: {
    firstName: {required}
  }
})
r$.user.$is
Extending collections properties 
ts
import { defineRegleConfig } from '@regle/core';
const { useRegle } = defineRegleConfig({
  shortcuts: {
    collections: {
      $isArrayEmpty: (collection) => collection.$each.length === 0;
    }
  }
});
const { r$ } = useRegle({ projects: [{ name: '' }] }, {
  projects: {
    $each: {
      name: { required }
    }
  }
})
r$.projects.$is
Typing shortcuts in component props 
When defining shortcuts, it can be hard to type props in common Input components. For this Regle provides a type helper that can ease the declaration of these props.
ts
import { defineRegleConfig } from '@regle/core';
export const { useRegle: useCustomRegle } = defineRegleConfig({
  shortcuts: {
    fields: {
      $test: () => true,
    },
  },
});vue
<script lang='ts' setup>
import type { RegleCustomFieldStatus } from '@regle/core';
import {useCustomRegle} from './config'
const props = defineProps<{
  field: RegleCustomFieldStatus<typeof useCustomRegle, string, 'required'>;
  placeholder: string;
}>();
props.field.$test
</script>
