export interface Pixiv_Client { access_token: string; expires_in: number; token_type: string; scope: string; refresh_token: string; user: Pixiv_Client_User; device_token: string; } export interface Pixiv_Client_User { profile_image_urls: { px_16x16: string; px_50x50: string; px_170x170: string; }; id: string; name: string; account: string; mail_address: string; is_premium: boolean; x_restrict: number; is_mail_authorized: boolean; } export interface Pixiv_Request_Data { client_id: string; client_secret: string; get_secure_url: string; grant_type: string; refresh_token: string; username: string; password: string; } export interface Pixiv_User { id: number; name: string; account: string; profile_image_urls: { medium: string; }; comment: string; is_followed: boolean; } export interface Pixiv_User_Detail { user: Pixiv_User; profile: { webpage: string; gender: string; birth: string; birth_day: string; birth_year: number; region: string; address_id: number; country_code: string; job: string; job_id: number; total_follow_users: number; total_mypixiv_users: number; total_illusts: number; total_manga: number; total_novels: number; total_illust_bookmarks_public: number; total_illust_series: number; background_image_url: string; twitter_account: string; twitter_url: string; pawoo_url: string; is_premium: boolean; is_using_custom_profile_image: boolean; }; profile_publicity: { gender: string; region: string; birth_day: string; birth_year: string; job: string; pawoo: boolean; }; workspace: { pc: string; monitor: string; tool: string; scanner: string; tablet: string; mouse: string; printer: string; desktop: string; music: string; desk: string; chair: string; comment: string; workspace_image_url: string | null; }; } export interface Pixiv_Illust_Detail { illust: Pixiv_Illust; } export interface Pixiv_Illust_Search { illusts: Pixiv_Illust[]; next_url: string | null; search_span_limit?: number; } export interface Pixiv_User_Search { user_previews: { user: Pixiv_User; illusts: Pixiv_Illust[]; novels: Pixiv_Novel[]; is_muted: boolean; }[]; next_url: string | null; } export interface Pixiv_Comment_Search { total_comments: number; comments: Pixiv_Comment[]; next_url: string | null; } export interface Pixiv_Novel_Search { novels: Pixiv_Novel[]; next_url: string | null; privacy_policy?: {}; search_span_limit?: number; } export interface Pixiv_Bookmark_Search { bookmark_tags: Pixiv_Tag[]; next_url: string | null; } export interface Pixiv_Manga_Search { illusts: Pixiv_Manga[]; ranking_illusts: Pixiv_Manga[] | []; privacy_policy: {}; next_url: string | null; } export interface Pixiv_Illust { id: number; title: string; type: string; image_urls: { square_medium: string; medium: string; large?: string; }; caption: string; restrict: number; user: Pixiv_User; tags: Pixiv_Tag[]; tools: string[]; create_date: string; page_count: number; width: number; height: number; sanity_level: number; meta_single_page: { original_image_url?: string; }; meta_pages: Pixiv_Meta_Page[]; total_view: number; total_bookmarks: number; is_bookmarked: boolean; visible: boolean; is_muted: boolean; total_comments: number; } export interface Pixiv_Tag { name: string; translated_name: string | null; added_by_uploaded_user?: boolean; illust?: Pixiv_Illust; is_registered?: boolean; } export interface Pixiv_Meta_Page { image_urls: { square_medium: string; medium: string; large: string; original: string; }; } export interface Pixiv_Comment { id: number; comment: string; date: string; user: Pixiv_User; parent_comment: Pixiv_Comment | {}; } export interface Pixiv_Novel { id: number; title: string; caption: string; restrict: number; x_restrict: number; image_urls: { square_medium: string; medium: string; large?: string; }; create_date: string; tags: Pixiv_Tag[]; page_count: number; text_length: number; user: Pixiv_User; series: { id: number; title: string; } | {}; is_bookmarked: boolean; total_bookmarks: number; total_view: number; visible: boolean; total_comments: number; is_muted: boolean; is_mypixiv_only: boolean; is_x_restricted: boolean; } export interface Pixiv_Manga { id: number; title: string; type: string; image_urls: { square_medium: string; medium: string; large?: string; }; caption: string; restrict: number; user: Pixiv_User; tags: Pixiv_Tag[]; tools: string[]; create_date: string; page_count: string; width: number; height: number; sanity_level: number; x_restrict: number; series: { id: number; title: string; } | null; meta_single_page: {}; meta_pages: Pixiv_Meta_Page[]; total_view: number; total_bookmarks: number; is_bookmarked: boolean; visible: boolean; is_muted: boolean; } export interface Pixiv_Trend_Tags { trend_tags: Pixiv_Tag[]; } export interface Pixiv_Auto_Complete { search_auto_complete_keywords: string[]; } export interface Pixiv_Bookmark_Detail { is_bookmarked: boolean; tags: Pixiv_Tag[]; restrict: string; } export interface Ugoira_Meta_Data { ugoira_metadata: { zip_urls: { medium: string; }; frames: { file: string; delay: number; }[]; }; }