import type { Account, Address, Chain, Client, Transport } from 'viem'; import { type Role } from '../../../../utils/v2/roles/encodeRoleBitmap.js'; export type GrantRolesWriteParametersParameters = { registryAddress: Address; roles: Role[]; account: Address; resource: bigint; }; export declare const grantRolesWriteParameters: (client: Client, { registryAddress, roles, account, resource, }: GrantRolesWriteParametersParameters) => { readonly address: `0x${string}`; readonly functionName: "grantRootRoles"; readonly abi: readonly [{ readonly type: "error"; readonly name: "EACCannotGrantRoles"; readonly inputs: readonly [{ readonly name: "resource"; readonly type: "uint256"; }, { readonly name: "roleBitmap"; readonly type: "uint256"; }, { readonly name: "account"; readonly type: "address"; }]; }, { readonly type: "error"; readonly name: "EACCannotRevokeRoles"; readonly inputs: readonly [{ readonly name: "resource"; readonly type: "uint256"; }, { readonly name: "roleBitmap"; readonly type: "uint256"; }, { readonly name: "account"; readonly type: "address"; }]; }, { readonly type: "error"; readonly name: "EACInvalidAccount"; readonly inputs: readonly []; }, { readonly type: "error"; readonly name: "EACInvalidRoleBitmap"; readonly inputs: readonly [{ readonly name: "roleBitmap"; readonly type: "uint256"; }]; }, { readonly type: "error"; readonly name: "EACMaxAssignees"; readonly inputs: readonly [{ readonly name: "resource"; readonly type: "uint256"; }, { readonly name: "roleBitmap"; readonly type: "uint256"; }]; }, { readonly type: "error"; readonly name: "EACMinAssignees"; readonly inputs: readonly [{ readonly name: "resource"; readonly type: "uint256"; }, { readonly name: "roleBitmap"; readonly type: "uint256"; }]; }, { readonly type: "error"; readonly name: "EACRootResourceNotAllowed"; readonly inputs: readonly []; }, { readonly type: "error"; readonly name: "EACUnauthorizedAccountRoles"; readonly inputs: readonly [{ readonly name: "resource"; readonly type: "uint256"; }, { readonly name: "roleBitmap"; readonly type: "uint256"; }, { readonly name: "account"; readonly type: "address"; }]; }, { readonly type: "function"; readonly name: "grantRootRoles"; readonly inputs: readonly [{ readonly name: "roleBitmap"; readonly type: "uint256"; }, { readonly name: "account"; readonly type: "address"; }]; readonly outputs: readonly [{ readonly name: ""; readonly type: "bool"; }]; readonly stateMutability: "nonpayable"; }]; readonly chain: chain; readonly account: Account; readonly args: readonly [bigint, `0x${string}`]; } | { readonly address: `0x${string}`; readonly functionName: "grantRoles"; readonly abi: readonly [{ readonly type: "error"; readonly name: "EACCannotGrantRoles"; readonly inputs: readonly [{ readonly name: "resource"; readonly type: "uint256"; }, { readonly name: "roleBitmap"; readonly type: "uint256"; }, { readonly name: "account"; readonly type: "address"; }]; }, { readonly type: "error"; readonly name: "EACCannotRevokeRoles"; readonly inputs: readonly [{ readonly name: "resource"; readonly type: "uint256"; }, { readonly name: "roleBitmap"; readonly type: "uint256"; }, { readonly name: "account"; readonly type: "address"; }]; }, { readonly type: "error"; readonly name: "EACInvalidAccount"; readonly inputs: readonly []; }, { readonly type: "error"; readonly name: "EACInvalidRoleBitmap"; readonly inputs: readonly [{ readonly name: "roleBitmap"; readonly type: "uint256"; }]; }, { readonly type: "error"; readonly name: "EACMaxAssignees"; readonly inputs: readonly [{ readonly name: "resource"; readonly type: "uint256"; }, { readonly name: "roleBitmap"; readonly type: "uint256"; }]; }, { readonly type: "error"; readonly name: "EACMinAssignees"; readonly inputs: readonly [{ readonly name: "resource"; readonly type: "uint256"; }, { readonly name: "roleBitmap"; readonly type: "uint256"; }]; }, { readonly type: "error"; readonly name: "EACRootResourceNotAllowed"; readonly inputs: readonly []; }, { readonly type: "error"; readonly name: "EACUnauthorizedAccountRoles"; readonly inputs: readonly [{ readonly name: "resource"; readonly type: "uint256"; }, { readonly name: "roleBitmap"; readonly type: "uint256"; }, { readonly name: "account"; readonly type: "address"; }]; }, { readonly type: "function"; readonly name: "grantRoles"; readonly inputs: readonly [{ readonly name: "resource"; readonly type: "uint256"; }, { readonly name: "roleBitmap"; readonly type: "uint256"; }, { readonly name: "account"; readonly type: "address"; }]; readonly outputs: readonly [{ readonly name: ""; readonly type: "bool"; }]; readonly stateMutability: "nonpayable"; }]; readonly chain: chain; readonly account: Account; readonly args: readonly [bigint, bigint, `0x${string}`]; }; //# sourceMappingURL=grantRoles.d.ts.map