Variable StepConst

Step: IntersectionC<[TypeC<{
    actions: ArrayC<IntersectionC<[TypeC<{
        inputs: ArrayC<IntersectionC<[TypeC<{}>, PartialC<{
            content: ArrayC<IntersectionC<[TypeC<{
                type: UnionC<[LiteralC<string>, ArrayC<LiteralC<string>>]> | UnionC<[ArrayC<UnionC<[LiteralC<string>, LiteralC<string>, ...LiteralC<string>[]]>>, UnionC<[LiteralC<string>, LiteralC<string>, ...LiteralC<string>[]]>]>;
            }>, PartialC<{
                id: StringC;
                service: UrlFromStringC;
                url: UrlFromStringC;
            }>]>>;
            doi: StringC;
            id: StringC;
            published: DateFromUnknownC;
            type: UnionC<[LiteralC<string>, ArrayC<LiteralC<string>>]> | UnionC<[ArrayC<UnionC<[LiteralC<string>, LiteralC<string>, ...LiteralC<string>[]]>>, UnionC<[LiteralC<string>, LiteralC<string>, ...LiteralC<string>[]]>]>;
            url: UrlFromStringC;
        }>]>>;
        outputs: ArrayC<IntersectionC<[TypeC<{}>, PartialC<{
            content: ArrayC<IntersectionC<[TypeC<{
                type: UnionC<[LiteralC<string>, ArrayC<LiteralC<string>>]> | UnionC<[ArrayC<UnionC<[LiteralC<string>, LiteralC<string>, ...LiteralC<string>[]]>>, UnionC<[LiteralC<string>, LiteralC<string>, ...LiteralC<string>[]]>]>;
            }>, PartialC<{
                id: StringC;
                service: UrlFromStringC;
                url: UrlFromStringC;
            }>]>>;
            doi: StringC;
            id: StringC;
            published: DateFromUnknownC;
            type: UnionC<[LiteralC<string>, ArrayC<LiteralC<string>>]> | UnionC<[ArrayC<UnionC<[LiteralC<string>, LiteralC<string>, ...LiteralC<string>[]]>>, UnionC<[LiteralC<string>, LiteralC<string>, ...LiteralC<string>[]]>]>;
            url: UrlFromStringC;
        }>]>>;
        participants: ArrayC<IntersectionC<[TypeC<{
            actor: UnionC<[TypeC<{
                name: StringC;
                type: UnionC<[LiteralC<string>, ArrayC<LiteralC<string>>]> | UnionC<[ArrayC<UnionC<[LiteralC<string>, LiteralC<string>, ...LiteralC<string>[]]>>, UnionC<[LiteralC<string>, LiteralC<string>, ...LiteralC<string>[]]>]>;
            }>, UnknownC]>;
            role: StringC;
        }>, PartialC<{
            id: StringC;
            type: UnionC<[LiteralC<"pro:roleintime">, LiteralC<"pro:RoleInTime">]>;
        }>]>>;
    }>, PartialC<{
        id: StringC;
    }>]>>;
    assertions: ArrayC<IntersectionC<[TypeC<{
        item: UnknownC;
        status: StringC;
    }>, PartialC<{
        happened: DateFromUnknownC;
    }>]>>;
}>, PartialC<{
    id: StringC;
    inputs: ArrayC<IntersectionC<[TypeC<{}>, PartialC<{
        content: ArrayC<IntersectionC<[TypeC<{
            type: UnionC<[LiteralC<string>, ArrayC<LiteralC<string>>]> | UnionC<[ArrayC<UnionC<[LiteralC<string>, LiteralC<string>, ...LiteralC<string>[]]>>, UnionC<[LiteralC<string>, LiteralC<string>, ...LiteralC<string>[]]>]>;
        }>, PartialC<{
            id: StringC;
            service: UrlFromStringC;
            url: UrlFromStringC;
        }>]>>;
        doi: StringC;
        id: StringC;
        published: DateFromUnknownC;
        type: UnionC<[LiteralC<string>, ArrayC<LiteralC<string>>]> | UnionC<[ArrayC<UnionC<[LiteralC<string>, LiteralC<string>, ...LiteralC<string>[]]>>, UnionC<[LiteralC<string>, LiteralC<string>, ...LiteralC<string>[]]>]>;
        url: UrlFromStringC;
    }>]>>;
    next-step: UnionC<[StringC, NullC]>;
    previous-step: UnionC<[StringC, NullC]>;
}>]> = ...

One step in a docmap's workflow. This is an ephemeral object (i.e., the same set of actions may appear in a step with a different content hash).

Example

import { StepT, Step } from '@docmaps/sdk';
import { Validation } from 'io-ts';

const C: Validation<StepT> = Step.decode({
actions: [{
inputs: [{
doi: '10.12345/xyz',
type: 'Article',
}],
outputs: [{
published: '2020-01-01',
id: '123456',
doi: '10.12345/abcdef',
type: 'Article',
content: [{
type: 'text',
text: 'This is an example of a thing'
}]
}],
participants: [{
actor: {
type: 'person',
name: 'John Doe'
},
role: 'author'
}],
id: '123456'
}],
assertions: [{
item: {
type: 'Article',
id: '123456'
},
status: 'accepted',
happened: '2020-01-01'
}],
id: 'step-2',
'previous-step': 'step-1'
});

Since

0.1.0

Generated using TypeDoc