using System;
using System.Runtime.InteropServices;
using Cpp2IlInjected;
namespace System.Runtime.Remoting.Lifetime
{
/// Defines a lifetime lease object that is used by the remoting lifetime service.
// Token: 0x020004E0 RID: 1248
[Token(Token = "0x20004E0")]
[ComVisible(true)]
public interface ILease
{
/// Gets the amount of time remaining on the lease.
/// The amount of time remaining on the lease.
/// The immediate caller makes the call through a reference to the interface and does not have infrastructure permission.
// Token: 0x170005F9 RID: 1529
// (get) Token: 0x060029F5 RID: 10741
[Token(Token = "0x170005F9")]
TimeSpan CurrentLeaseTime
{
[Token(Token = "0x60029F5")]
[Address(Slot = "0")]
get;
}
/// Gets the current of the lease.
/// The current of the lease.
/// The immediate caller makes the call through a reference to the interface and does not have infrastructure permission.
// Token: 0x170005FA RID: 1530
// (get) Token: 0x060029F6 RID: 10742
[Token(Token = "0x170005FA")]
LeaseState CurrentState
{
[Token(Token = "0x60029F6")]
[Address(Slot = "1")]
get;
}
/// Gets or sets the amount of time by which a call to the remote object renews the .
/// The amount of time by which a call to the remote object renews the .
/// The immediate caller makes the call through a reference to the interface and does not have infrastructure permission.
// Token: 0x170005FB RID: 1531
// (get) Token: 0x060029F7 RID: 10743
[Token(Token = "0x170005FB")]
TimeSpan RenewOnCallTime
{
[Token(Token = "0x60029F7")]
[Address(Slot = "2")]
get;
}
/// Renews a lease for the specified time.
/// The length of time to renew the lease by.
/// The new expiration time of the lease.
/// The immediate caller makes the call through a reference to the interface and does not have infrastructure permission.
// Token: 0x060029F8 RID: 10744
[Token(Token = "0x60029F8")]
[Address(Slot = "3")]
TimeSpan Renew(TimeSpan renewalTime);
}
}