@codesoul-co/hypha-core / modules/artifact/manager-policy
- Package index:
@codesoul-co/hypha-core - Source:
packages/core/src/modules/artifact/manager-policy.ts - Exports: 7
Using this module
Use the Manager policy module for applying policy and governance checks. It exports 6 functions, 1 type.
Import from the package entrypoint
import {
assertCreateAccess,
assertProfilePermission,
assertRecordPermission,
canAccessRecord,
profileReference,
resolveProfileRef,
} from '@codesoul-co/hypha-core';
import type {
ArtifactPermission,
} from '@codesoul-co/hypha-core';Usage patterns
- Use the 1 type/interface export as static contracts in application code, adapters, or tests. Import them with
import type; they do not exist at runtime. - The module exposes 6 functions as direct operation entrypoints. Every overload, required/optional parameter, and return type is documented below.
Public exports
| Symbol | Kind | Signature | Description |
|---|---|---|---|
assertCreateAccess | function | assertCreateAccess(access: ArtifactAccessRecord, principal: ExecutionPrincipal, workspaceId: string, tenantId?: string): void | Assert Create Access function with 1 public call signature; parameters and return types are listed below. |
assertProfilePermission | function | assertProfilePermission(profile: ArtifactProfileSpec, principal: ExecutionPrincipal, permission: ArtifactPermission): void | Assert Profile Permission function with 1 public call signature; parameters and return types are listed below. |
assertRecordPermission | function | assertRecordPermission(profile: ArtifactProfileSpec, record: ArtifactRecord, principal: ExecutionPrincipal, permission: ArtifactPermission): void | Assert Record Permission function with 1 public call signature; parameters and return types are listed below. |
canAccessRecord | function | canAccessRecord(record: ArtifactRecord, principal: ExecutionPrincipal): boolean | Can Access Record function with 1 public call signature; parameters and return types are listed below. |
profileReference | function | profileReference(profile: ArtifactProfileSpec): SpecRef | Profile Reference function with 1 public call signature; parameters and return types are listed below. |
resolveProfileRef | function | resolveProfileRef(profiles: ArtifactProfileSpec[], ref: SpecRef): ArtifactProfileSpec | null | Resolve Profile Ref function with 1 public call signature; parameters and return types are listed below. |
ArtifactPermission | type | type ArtifactPermission = 'read' | 'write' | 'delete' | Public type alias for Artifact Permission; the declaration contains its complete type expression. |
assertCreateAccess
Assert Create Access function with 1 public call signature; parameters and return types are listed below.
- Kind: function
- Import:
import { assertCreateAccess } from '@codesoul-co/hypha-core'; - Source module:
modules/artifact/manager-policy
Declaration
export declare function assertCreateAccess(access: ArtifactAccessRecord, principal: ExecutionPrincipal, workspaceId: string, tenantId?: string): void;Call signature
assertCreateAccess(access: ArtifactAccessRecord, principal: ExecutionPrincipal, workspaceId: string, tenantId?: string): voidParameters
| Parameter | Type | Required | Description |
|---|---|---|---|
access | ArtifactAccessRecord | Yes | Required parameter; accepted values are defined by the type column. |
principal | ExecutionPrincipal | Yes | Required parameter; accepted values are defined by the type column. |
workspaceId | string | Yes | Required parameter; accepted values are defined by the type column. |
tenantId | string | No | Optional parameter; accepted values are defined by the type column. |
Returns
- Type:
void - Description: Returns no value.
assertProfilePermission
Assert Profile Permission function with 1 public call signature; parameters and return types are listed below.
- Kind: function
- Import:
import { assertProfilePermission } from '@codesoul-co/hypha-core'; - Source module:
modules/artifact/manager-policy
Declaration
export declare function assertProfilePermission(profile: ArtifactProfileSpec, principal: ExecutionPrincipal, permission: ArtifactPermission): void;Call signature
assertProfilePermission(profile: ArtifactProfileSpec, principal: ExecutionPrincipal, permission: ArtifactPermission): voidParameters
| Parameter | Type | Required | Description |
|---|---|---|---|
profile | ArtifactProfileSpec | Yes | Required parameter; accepted values are defined by the type column. |
principal | ExecutionPrincipal | Yes | Required parameter; accepted values are defined by the type column. |
permission | ArtifactPermission | Yes | Required parameter; accepted values are defined by the type column. |
Returns
- Type:
void - Description: Returns no value.
assertRecordPermission
Assert Record Permission function with 1 public call signature; parameters and return types are listed below.
- Kind: function
- Import:
import { assertRecordPermission } from '@codesoul-co/hypha-core'; - Source module:
modules/artifact/manager-policy
Declaration
export declare function assertRecordPermission(profile: ArtifactProfileSpec, record: ArtifactRecord, principal: ExecutionPrincipal, permission: ArtifactPermission): void;Call signature
assertRecordPermission(profile: ArtifactProfileSpec, record: ArtifactRecord, principal: ExecutionPrincipal, permission: ArtifactPermission): voidParameters
| Parameter | Type | Required | Description |
|---|---|---|---|
profile | ArtifactProfileSpec | Yes | Required parameter; accepted values are defined by the type column. |
record | ArtifactRecord | Yes | Required parameter; accepted values are defined by the type column. |
principal | ExecutionPrincipal | Yes | Required parameter; accepted values are defined by the type column. |
permission | ArtifactPermission | Yes | Required parameter; accepted values are defined by the type column. |
Returns
- Type:
void - Description: Returns no value.
canAccessRecord
Can Access Record function with 1 public call signature; parameters and return types are listed below.
- Kind: function
- Import:
import { canAccessRecord } from '@codesoul-co/hypha-core'; - Source module:
modules/artifact/manager-policy
Declaration
export declare function canAccessRecord(record: ArtifactRecord, principal: ExecutionPrincipal): boolean;Call signature
canAccessRecord(record: ArtifactRecord, principal: ExecutionPrincipal): booleanParameters
| Parameter | Type | Required | Description |
|---|---|---|---|
record | ArtifactRecord | Yes | Required parameter; accepted values are defined by the type column. |
principal | ExecutionPrincipal | Yes | Required parameter; accepted values are defined by the type column. |
Returns
- Type:
boolean - Description: The return contract is defined by the type shown above.
profileReference
Profile Reference function with 1 public call signature; parameters and return types are listed below.
- Kind: function
- Import:
import { profileReference } from '@codesoul-co/hypha-core'; - Source module:
modules/artifact/manager-policy
Declaration
export declare function profileReference(profile: ArtifactProfileSpec): SpecRef;Call signature
profileReference(profile: ArtifactProfileSpec): SpecRefParameters
| Parameter | Type | Required | Description |
|---|---|---|---|
profile | ArtifactProfileSpec | Yes | Required parameter; accepted values are defined by the type column. |
Returns
- Type:
SpecRef - Description: The return contract is defined by the type shown above.
resolveProfileRef
Resolve Profile Ref function with 1 public call signature; parameters and return types are listed below.
- Kind: function
- Import:
import { resolveProfileRef } from '@codesoul-co/hypha-core'; - Source module:
modules/artifact/manager-policy
Declaration
export declare function resolveProfileRef(profiles: ArtifactProfileSpec[], ref: SpecRef): ArtifactProfileSpec | null;Call signature
resolveProfileRef(profiles: ArtifactProfileSpec[], ref: SpecRef): ArtifactProfileSpec | nullParameters
| Parameter | Type | Required | Description |
|---|---|---|---|
profiles | ArtifactProfileSpec[] | Yes | Required parameter; accepted values are defined by the type column. |
ref | SpecRef | Yes | Required parameter; accepted values are defined by the type column. |
Returns
- Type:
ArtifactProfileSpec - Description: The return contract is defined by the type shown above.
ArtifactPermission
Public type alias for Artifact Permission; the declaration contains its complete type expression.
- Kind: type
- Import:
import type { ArtifactPermission } from '@codesoul-co/hypha-core'; - Source module:
modules/artifact/manager-policy
Declaration
export type ArtifactPermission = 'read' | 'write' | 'delete';