createVincentAbilityPolicy<Defined in: policyCore/vincentPolicy.ts:363VincentAbilityApiVersion>(config):object
createVincentAbilityPolicy() is used to bind a policy to a specific ability. You must provide a abilityParameterMappings argument
which instructs the ability which of its abilityParams should be passed to the Vincent Policy during evaluation, and
defines what the argument passed to the ability should be.
For example, a Ability might receive an argument called tokenInAmount, but it may need to pass that as buyAmount to a
policy that uses the tokenInAmount for its own purposes.
Type Parameters
VincentAbilityApiVersion
VincentAbilityApiVersion extends string
Parameters
config
abilityParameterMappings
Partial<{ [K in keyof z.infer<AbilityParamsSchema>]: keyof z.infer<PolicyAbilityParams> }>
abilityParamsSchema
AbilityParamsSchema
bundledVincentPolicy
BundledVincentPolicy<{ abilityParamsSchema: PolicyAbilityParams; commit?: CommitLifecycleFunction<CommitParams, CommitAllowResult, CommitDenyResult>; commitAllowResultSchema?: CommitAllowResult; commitDenyResultSchema?: CommitDenyResult; commitParamsSchema?: CommitParams; evalAllowResultSchema?: EvalAllowResult; evalDenyResultSchema?: EvalDenyResult; evaluate: PolicyLifecycleFunction; packageName: PackageName; precheck?: PolicyLifecycleFunction<PolicyAbilityParams, UserParams, PrecheckAllowResult, PrecheckDenyResult>; precheckAllowResultSchema?: PrecheckAllowResult; precheckDenyResultSchema?: PrecheckDenyResult; userParamsSchema?: UserParams; }, IpfsCid, VincentAbilityApiVersion>
Returns
object
A Vincent Policy that is configured to work with the provided ability
A Vincent Policy that is configured to work with the provided ability
abilityParameterMappings
abilityParameterMappings: Partial<{ [K in string | number | symbol]: keyof TypeOf<PolicyAbilityParams> }>
ipfsCid
ipfsCid: IpfsCid
vincentPolicy
vincentPolicy: object
vincentPolicy.abilityParamsSchema
abilityParamsSchema: PolicyAbilityParams
vincentPolicy.commit?
optionalcommit:CommitLifecycleFunction<CommitParams,CommitAllowResult,CommitDenyResult>
vincentPolicy.commitAllowResultSchema?
optionalcommitAllowResultSchema:CommitAllowResult
vincentPolicy.commitDenyResultSchema?
optionalcommitDenyResultSchema:CommitDenyResult
vincentPolicy.commitParamsSchema?
optionalcommitParamsSchema:CommitParams
vincentPolicy.evalAllowResultSchema?
optionalevalAllowResultSchema:EvalAllowResult
vincentPolicy.evalDenyResultSchema?
optionalevalDenyResultSchema:EvalDenyResult
vincentPolicy.evaluate
evaluate: PolicyLifecycleFunction
vincentPolicy.packageName
packageName: PackageName
vincentPolicy.precheck?
optionalprecheck:PolicyLifecycleFunction<PolicyAbilityParams,UserParams,PrecheckAllowResult,PrecheckDenyResult>
vincentPolicy.precheckAllowResultSchema?
optionalprecheckAllowResultSchema:PrecheckAllowResult
vincentPolicy.precheckDenyResultSchema?
optionalprecheckDenyResultSchema:PrecheckDenyResult
vincentPolicy.userParamsSchema?
optionaluserParamsSchema:UserParams

