using Google.Apis.Customsearch.v1.Data; using System; using System.Collections.Generic; using System.Threading.Tasks; namespace NadekoBot.Core.Services { public interface IGoogleApiService : INService { IEnumerable Languages { get; } Task> GetVideoLinksByKeywordAsync(string keywords, int count = 1); Task> GetVideoInfosByKeywordAsync(string keywords, int count = 1); Task> GetPlaylistIdsByKeywordsAsync(string keywords, int count = 1); Task> GetRelatedVideosAsync(string url, int count = 1); Task> GetPlaylistTracksAsync(string playlistId, int count = 50); Task> GetVideoDurationsAsync(IEnumerable videoIds); Task GetImageAsync(string query, int start = 1); Task Translate(string sourceText, string sourceLanguage, string targetLanguage); Task ShortenUrl(string url); } public struct ImageResult { public Result.ImageData Image { get; } public string Link { get; } public ImageResult(Result.ImageData image, string link) { this.Image = image; this.Link = link; } } }