declare const contract: {
    readonly id: 25514;
    readonly address: "0x4acfea67832a32ea284c8e1a516827de405dc994";
    readonly contract_name: "LockTokens";
    readonly display_name: "Lock Tokens";
    readonly is_deprecated: false;
    readonly is_proxy: false;
    readonly proxy_to: false;
    readonly created_at: 1739347027;
    readonly abi: readonly [{
        readonly name: "ReentrancyGuardReentrantCall";
        readonly type: "error";
        readonly inputs: readonly [];
    }, {
        readonly name: "SafeERC20FailedOperation";
        readonly type: "error";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "token";
        }];
    }, {
        readonly name: "BatchLockCreated";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "user";
            readonly indexed: true;
        }, {
            readonly type: "uint256";
            readonly name: "numberOfLocks";
        }];
    }, {
        readonly name: "LockDurationModified";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "user";
            readonly indexed: true;
        }, {
            readonly type: "address";
            readonly name: "token";
            readonly indexed: true;
        }, {
            readonly type: "uint256";
            readonly name: "lockIndex";
        }, {
            readonly type: "uint256";
            readonly name: "newUnlockTime";
        }];
    }, {
        readonly name: "TokensLocked";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "user";
            readonly indexed: true;
        }, {
            readonly type: "address";
            readonly name: "token";
            readonly indexed: true;
        }, {
            readonly type: "uint256";
            readonly name: "amount";
        }, {
            readonly type: "uint256";
            readonly name: "unlockTime";
        }];
    }, {
        readonly name: "TokensWithdrawn";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "user";
            readonly indexed: true;
        }, {
            readonly type: "address";
            readonly name: "token";
            readonly indexed: true;
        }, {
            readonly type: "uint256";
            readonly name: "amount";
        }];
    }, {
        readonly name: "MAX_LOCKS_PER_USER";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "uint256";
        }];
    }, {
        readonly name: "batchLockTokens";
        readonly type: "function";
        readonly stateMutability: "nonpayable";
        readonly inputs: readonly [{
            readonly type: "address[]";
            readonly name: "_tokens";
        }, {
            readonly type: "uint256[]";
            readonly name: "_amounts";
        }, {
            readonly type: "uint8[]";
            readonly name: "_months";
        }];
        readonly outputs: readonly [];
    }, {
        readonly name: "getAllLockedTokens";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "tuple[]";
            readonly components: readonly [{
                readonly type: "address";
                readonly name: "token";
            }, {
                readonly type: "address";
                readonly name: "owner";
            }, {
                readonly type: "uint256";
                readonly name: "amount";
            }, {
                readonly type: "uint8";
                readonly name: "decimals";
            }, {
                readonly type: "uint256";
                readonly name: "unlockTime";
            }, {
                readonly type: "uint256";
                readonly name: "remainingTime";
            }];
        }];
    }, {
        readonly name: "getLocksForToken";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "_tokenAddress";
        }];
        readonly outputs: readonly [{
            readonly type: "tuple[]";
            readonly components: readonly [{
                readonly type: "address";
                readonly name: "token";
            }, {
                readonly type: "address";
                readonly name: "owner";
            }, {
                readonly type: "uint256";
                readonly name: "amount";
            }, {
                readonly type: "uint8";
                readonly name: "decimals";
            }, {
                readonly type: "uint256";
                readonly name: "unlockTime";
            }, {
                readonly type: "uint256";
                readonly name: "remainingTime";
            }];
        }];
    }, {
        readonly name: "getRemainingLockTime";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "_user";
        }, {
            readonly type: "uint256";
            readonly name: "_lockIndex";
        }];
        readonly outputs: readonly [{
            readonly type: "uint256";
        }];
    }, {
        readonly name: "getUserLocks";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "_user";
        }];
        readonly outputs: readonly [{
            readonly type: "tuple[]";
            readonly components: readonly [{
                readonly type: "address";
                readonly name: "token";
            }, {
                readonly type: "uint256";
                readonly name: "amount";
            }, {
                readonly type: "uint256";
                readonly name: "unlockTime";
            }];
        }];
    }, {
        readonly name: "getUserLocksInfo";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "_user";
        }];
        readonly outputs: readonly [{
            readonly type: "tuple[]";
            readonly components: readonly [{
                readonly type: "address";
                readonly name: "token";
            }, {
                readonly type: "address";
                readonly name: "owner";
            }, {
                readonly type: "uint256";
                readonly name: "amount";
            }, {
                readonly type: "uint8";
                readonly name: "decimals";
            }, {
                readonly type: "uint256";
                readonly name: "unlockTime";
            }, {
                readonly type: "uint256";
                readonly name: "remainingTime";
            }];
        }];
    }, {
        readonly name: "hasLockedTokens";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [{
            readonly type: "address";
        }];
        readonly outputs: readonly [{
            readonly type: "bool";
        }];
    }, {
        readonly name: "isLocked";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "_user";
        }, {
            readonly type: "uint256";
            readonly name: "_lockIndex";
        }];
        readonly outputs: readonly [{
            readonly type: "bool";
        }];
    }, {
        readonly name: "lockTokens";
        readonly type: "function";
        readonly stateMutability: "nonpayable";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "_token";
        }, {
            readonly type: "uint256";
            readonly name: "_amount";
        }, {
            readonly type: "uint8";
            readonly name: "_months";
        }];
        readonly outputs: readonly [];
    }, {
        readonly name: "lockingUsers";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [{
            readonly type: "uint256";
        }];
        readonly outputs: readonly [{
            readonly type: "address";
        }];
    }, {
        readonly name: "userLocks";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [{
            readonly type: "address";
        }, {
            readonly type: "uint256";
        }];
        readonly outputs: readonly [{
            readonly type: "address";
            readonly name: "token";
        }, {
            readonly type: "uint256";
            readonly name: "amount";
        }, {
            readonly type: "uint256";
            readonly name: "unlockTime";
        }];
    }, {
        readonly name: "withdrawTokens";
        readonly type: "function";
        readonly stateMutability: "nonpayable";
        readonly inputs: readonly [{
            readonly type: "uint256";
            readonly name: "_lockIndex";
        }];
        readonly outputs: readonly [];
    }];
};

export { contract as default };
