import type { OAuth2Client } from 'google-auth-library'; export interface YouTubeCommentsPageInput { expectedChannelId?: string; videoId?: string; maxResults?: number; pageToken?: string; } /** One bounded page of top-level comments; embedded replies are deliberately not treated as complete. */ export declare function listYouTubeComments(auth: OAuth2Client, input: YouTubeCommentsPageInput): Promise<{ channel: { id: string; title: string; }; videoId: string | null; threads: { threadId: string | null; videoId: string | null; topLevelComment: { id: string | null; text: string | null; authorDisplayName: string | null; authorChannelId: string | null; publishedAt: string | null; updatedAt: string | null; likeCount: number | null; }; canReply: boolean | null; totalReplyCount: number | null; repliesIncluded: boolean; repliesComplete: boolean; }[]; nextPageToken: string | null; }>; interface ParentTarget { expectedChannelId: string; videoId: string; threadId: string; parentCommentId: string; } export interface YouTubeCommentRepliesInput extends ParentTarget { maxResults?: number; pageToken?: string; } export declare function listYouTubeCommentReplies(auth: OAuth2Client, input: YouTubeCommentRepliesInput): Promise<{ replies: { id: string | null; text: string | null; authorDisplayName: string | null; authorChannelId: string | null; publishedAt: string | null; updatedAt: string | null; likeCount: number | null; }[]; nextPageToken: string | null; repliesComplete: boolean; channel: { id: string; title: string; }; video: { id: string | null | undefined; title: string | null; }; parentComment: { id: string | null; text: string | null; authorDisplayName: string | null; authorChannelId: string | null; publishedAt: string | null; updatedAt: string | null; likeCount: number | null; }; canReply: boolean | null; totalReplyCount: number | null; }>; export interface YouTubeReplyInput extends ParentTarget { text: string; confirm?: boolean; } export declare function replyToYouTubeComment(auth: OAuth2Client, input: YouTubeReplyInput): Promise<{ text: string; public: boolean; channel: { id: string; title: string; }; video: { id: string | null | undefined; title: string | null; }; parentComment: { id: string | null; text: string | null; authorDisplayName: string | null; authorChannelId: string | null; publishedAt: string | null; updatedAt: string | null; likeCount: number | null; }; canReply: boolean | null; totalReplyCount: number | null; status: "preview"; } | { note: string; text: string; public: boolean; channel: { id: string; title: string; }; video: { id: string | null | undefined; title: string | null; }; parentComment: { id: string | null; text: string | null; authorDisplayName: string | null; authorChannelId: string | null; publishedAt: string | null; updatedAt: string | null; likeCount: number | null; }; canReply: boolean | null; totalReplyCount: number | null; status: "unknown"; } | { reply: { id: string; text: string; publishedAt: string | null; }; text: string; public: boolean; channel: { id: string; title: string; }; video: { id: string | null | undefined; title: string | null; }; parentComment: { id: string | null; text: string | null; authorDisplayName: string | null; authorChannelId: string | null; publishedAt: string | null; updatedAt: string | null; likeCount: number | null; }; canReply: boolean | null; totalReplyCount: number | null; status: "posted"; }>; export {};