$Constraints: $.Shape<{
    dmpRemainingMessages: number[];
    futureValidationCode: undefined | readonly [number, `0x${string}`];
    hrmpChannelsOut: (readonly [number, {
        bytesRemaining: number;
        messagesRemaining: number;
    }])[];
    hrmpInbound: {
        valid_watermarks: number[];
    };
    maxCodeSize: number;
    maxHrmpNumPerCandidate: number;
    maxPovSize: number;
    maxUmpNumPerCandidate: number;
    minRelayParentNumber: number;
    requiredParent: `0x${string}`;
    umpRemaining: number;
    umpRemainingBytes: number;
    upgradeRestriction: undefined | {
        type: "Present";
    };
    validationCodeHash: `0x${string}`;
}, {
    dmpRemainingMessages: number[];
    futureValidationCode: undefined | [number, `0x${string}`];
    hrmpChannelsOut: [number, {
        bytesRemaining: number;
        messagesRemaining: number;
    }][];
    hrmpInbound: {
        valid_watermarks: number[];
    };
    maxCodeSize: number;
    maxHrmpNumPerCandidate: number;
    maxPovSize: number;
    maxUmpNumPerCandidate: number;
    minRelayParentNumber: number;
    requiredParent: `0x${string}`;
    umpRemaining: number;
    umpRemainingBytes: number;
    upgradeRestriction: undefined | {
        type: "Present";
    };
    validationCodeHash: `0x${string}`;
}> = ...

Constraints on the actions that can be taken by a new parachain block. These limitations are implicitly associated with some particular parachain, which should be apparent from usage.