using System; namespace Implab { public interface IPromise : IPromise { IPromise On(Action success, Action error, Action cancel); IPromise On(Action success, Action error); IPromise On(Action success); new T Join(); new T Join(int timeout); new IPromise On(Action success, Action error, Action cancel); new IPromise On(Action success, Action error); new IPromise On(Action success); new IPromise On(Action handler, PromiseEventType events); } }