63 lines
1.7 KiB
Plaintext
63 lines
1.7 KiB
Plaintext
|
|
let perm_type = [| 'High, 'Medium, 'Low, 'Closed |] in
|
||
|
|
let protocol_type = [| 'Observe, 'Absorb, 'Challenge, 'Reject |] in
|
||
|
|
let duration_type = [| 'Moment, 'Days, 'Weeks, 'Indefinite |] in
|
||
|
|
|
||
|
|
let signal_type = [|
|
||
|
|
'FrameBreakingQuestion,
|
||
|
|
'UsageFriction,
|
||
|
|
'ProductiveMisunderstanding,
|
||
|
|
'HardBug,
|
||
|
|
'ContextlessInsight,
|
||
|
|
'SignificantSilence,
|
||
|
|
'ConnectsToPractice,
|
||
|
|
'EcosystemRelevance,
|
||
|
|
'DepthDemonstrated,
|
||
|
|
'IdentityReinforcement,
|
||
|
|
'OpportunityAlignment,
|
||
|
|
|] in
|
||
|
|
|
||
|
|
let opening_condition_type = {
|
||
|
|
max_tension_dimensions | Number,
|
||
|
|
pending_transitions | Number,
|
||
|
|
core_stable | Bool,
|
||
|
|
description | String,
|
||
|
|
} in
|
||
|
|
|
||
|
|
{
|
||
|
|
Permeability = perm_type,
|
||
|
|
Protocol = protocol_type,
|
||
|
|
Duration = duration_type,
|
||
|
|
SignalType = signal_type,
|
||
|
|
OpeningCondition = opening_condition_type,
|
||
|
|
|
||
|
|
Membrane = {
|
||
|
|
id | String,
|
||
|
|
name | String,
|
||
|
|
description | String,
|
||
|
|
permeability | perm_type,
|
||
|
|
accepts | Array signal_type,
|
||
|
|
protects | Array String,
|
||
|
|
opening_condition | opening_condition_type,
|
||
|
|
closing_condition | String,
|
||
|
|
protocol | protocol_type,
|
||
|
|
max_duration | duration_type,
|
||
|
|
active | Bool | default = false,
|
||
|
|
},
|
||
|
|
|
||
|
|
GateConfig = {
|
||
|
|
membranes | Array {
|
||
|
|
id | String,
|
||
|
|
name | String,
|
||
|
|
description | String,
|
||
|
|
permeability | perm_type,
|
||
|
|
accepts | Array signal_type,
|
||
|
|
protects | Array String,
|
||
|
|
opening_condition | opening_condition_type,
|
||
|
|
closing_condition | String,
|
||
|
|
protocol | protocol_type,
|
||
|
|
max_duration | duration_type,
|
||
|
|
active | Bool,
|
||
|
|
},
|
||
|
|
},
|
||
|
|
}
|