@balena/contrato
    Preparing search index...

    Interface ContractObject

    interface ContractObject {
        aliases?: string[];
        assets?: Record<string, Asset>;
        canonicalSlug?: string;
        children?: ChildrenTree;
        data?: any;
        description?: string;
        name?: string;
        requires?: ContractRequirement[];
        slug?: string;
        type: string;
        variants?: PartialContract[];
        version?: string;
        [key: string]: unknown;
    }

    Hierarchy

    • PartialContract
      • ContractObject

    Indexable

    • [key: string]: unknown

      Additional top-level fields, preserved for round-trip fidelity.

    Index
    aliases?: string[]

    Alternative slugs this contract can be referenced by.

    assets?: Record<string, Asset>

    Named assets attached to the contract.

    canonicalSlug?: string

    Canonical slug an alias maps back to.

    children?: ChildrenTree

    Children contracts. This is also how a contract declares the capabilities it makes available to its context.

    data?: any

    Free-form data specific to the contract type.

    description?: string

    Human-readable description.

    name?: string

    Human-readable name.

    requires?: ContractRequirement[]

    Requirements that must be satisfied for this contract.

    slug?: string

    Unique identifier of the contract within its type.

    type: string

    The contract type, e.g. sw.os or hw.device-type.

    variants?: PartialContract[]

    Nested variants, deep-merged with the base contract during expansion.

    version?: string

    Version string: semver or a plain identifier (e.g. wheezy).