UNPKG

vue-ts-types

Version:

Lightweight TypeScript-first Vue prop type definitions

32 lines (31 loc) 1.09 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.functionProp = void 0; const validators_1 = require("../validators"); /* eslint-disable @typescript-eslint/no-unsafe-function-type */ /** * Allows any function. No further runtime validation is performed by default. * * @template T - can be used to restrict the type to a specific function signature at compile time. * @param validator - Optional function for further runtime validation; should return `undefined` if valid, or an error string if invalid. */ const functionProp = (validator) => ({ optional: { type: Function, required: false, default: undefined, validator: (0, validators_1.vuePropValidator)(validator), }, nullable: { type: Function, required: false, default: null, validator: (0, validators_1.vuePropValidator)(validator), }, required: { type: Function, required: true, validator: (0, validators_1.vuePropValidator)(validator), }, }); exports.functionProp = functionProp;