internal RestDownloadable(RestDownloadableDelegate <T> func) { _delegate = func; }
internal RestDownloadable(T value, RestDownloadableDelegate <T> func) { _delegate = func; SetValue(value); }
internal DownloadableOptionalSnowflakeEntity(T value, RestDownloadableDelegate <TDownloadable> func) : this(value, value.Id, func) { }
internal DownloadableOptionalSnowflakeEntity(T value, Snowflake id, RestDownloadableDelegate <TDownloadable> func) : base(value, id) { Downloadable = new RestDownloadable <TDownloadable>(func); }
internal DownloadableOptionalSnowflakeEntity(Snowflake id, RestDownloadableDelegate <TDownloadable> func) : this(null, id, func) { }