$BackingState: $.Shape<{
    constraints: {
        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}`;
    };
    pendingAvailability: {
        candidateHash: `0x${string}`;
        commitments: {
            headData: `0x${string}`;
            horizontalMessages: {
                data: `0x${string}`;
                recipient: number;
            }[];
            hrmpWatermark: number;
            newValidationCode: undefined | `0x${string}`;
            processedDownwardMessages: number;
            upwardMessages: `0x${string}`[];
        };
        descriptor: {
            collator: `0x${string}`;
            erasureRoot: `0x${string}`;
            paraHead: `0x${string}`;
            paraId: number;
            persistedValidationDataHash: `0x${string}`;
            povHash: `0x${string}`;
            relayParent: `0x${string}`;
            signature: `0x${string}`;
            validationCodeHash: `0x${string}`;
        };
        maxPovSize: number;
        relayParentNumber: number;
    }[];
}, {
    constraints: {
        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}`;
    };
    pendingAvailability: {
        candidateHash: `0x${string}`;
        commitments: {
            headData: `0x${string}`;
            horizontalMessages: {
                data: `0x${string}`;
                recipient: number;
            }[];
            hrmpWatermark: number;
            newValidationCode: undefined | `0x${string}`;
            processedDownwardMessages: number;
            upwardMessages: `0x${string}`[];
        };
        descriptor: {
            collator: `0x${string}`;
            erasureRoot: `0x${string}`;
            paraHead: `0x${string}`;
            paraId: number;
            persistedValidationDataHash: `0x${string}`;
            povHash: `0x${string}`;
            relayParent: `0x${string}`;
            signature: `0x${string}`;
            validationCodeHash: `0x${string}`;
        };
        maxPovSize: number;
        relayParentNumber: number;
    }[];
}> = ...