import type { EthAddress } from '@aztec/foundation/eth-address'; import { CommitteeAttestation } from '../block/index.js'; import type { CheckpointAttestation } from './checkpoint_attestation.js'; /** * Returns attestation signatures in the order of a series of provided ethereum addresses * The rollup smart contract expects attestations to appear in the order of the committee * @todo: perform this logic within the memory attestation store instead? */ export declare function orderAttestations(attestations: CheckpointAttestation[], orderAddresses: EthAddress[]): CommitteeAttestation[]; /** * Trims attestations to the minimum required number to save L1 calldata gas. * Each signature costs 65 bytes of calldata vs 20 bytes for just an address. * * Priority order for keeping attestations: * 1. The proposer's attestation (required by L1 contract - MissingProposerSignature revert) * 2. Attestations from the local node's validator keys * 3. Remaining attestations filled to reach the required count */ export declare function trimAttestations(attestations: CheckpointAttestation[], required: number, proposerAddress: EthAddress, localAddresses: EthAddress[]): CheckpointAttestation[]; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXR0ZXN0YXRpb25fdXRpbHMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wMnAvYXR0ZXN0YXRpb25fdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFaEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDekQsT0FBTyxLQUFLLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUV6RTs7OztHQUlHO0FBQ0gsd0JBQWdCLGlCQUFpQixDQUMvQixZQUFZLEVBQUUscUJBQXFCLEVBQUUsRUFDckMsY0FBYyxFQUFFLFVBQVUsRUFBRSxHQUMzQixvQkFBb0IsRUFBRSxDQXFCeEI7QUFFRDs7Ozs7Ozs7R0FRRztBQUNILHdCQUFnQixnQkFBZ0IsQ0FDOUIsWUFBWSxFQUFFLHFCQUFxQixFQUFFLEVBQ3JDLFFBQVEsRUFBRSxNQUFNLEVBQ2hCLGVBQWUsRUFBRSxVQUFVLEVBQzNCLGNBQWMsRUFBRSxVQUFVLEVBQUUsR0FDM0IscUJBQXFCLEVBQUUsQ0F3Q3pCIn0=