from __future__ import annotations

from types import SimpleNamespace

GET_TWITTER_POSTS_BY_IDS = "getTwitterPostsByIds"
GET_TWITTER_POSTS_BY_AUTHOR = "getTwitterPostsByAuthor"
SEARCH_TWITTER_POSTS = "getTwitterPostsByKeywords"
GET_TWITTER_RETWEETS = "getTwitterPostRetweets"
GET_TWITTER_QUOTES = "getTwitterPostQuotes"
GET_TWITTER_COMMENTS = "getTwitterPostComments"
GET_TWITTER_POST_INTERACTING_USERS = "getTwitterPostInteractingUsers"
COUNT_TWEETS = "countTweets"
GET_TWITTER_USER = "getTwitterUser"
GET_TWITTER_USERS = "getTwitterUsers"
SEARCH_TWITTER_USERS = "searchTwitterUsers"
GET_TWITTER_USER_CONNECTIONS = "getTwitterUserConnections"
GET_TWITTER_USERS_BY_KEYWORDS = "getTwitterUsersByKeywords"

GET_INSTAGRAM_POSTS_BY_IDS = "getInstagramPostsByIds"
GET_INSTAGRAM_POSTS_BY_USER = "getInstagramPostsByUser"
SEARCH_INSTAGRAM_POSTS = "getInstagramPostsByKeywords"
GET_INSTAGRAM_COMMENTS = "getInstagramCommentsByPostId"
GET_INSTAGRAM_USER = "getInstagramUser"
SEARCH_INSTAGRAM_USERS = "searchInstagramUsers"
GET_INSTAGRAM_USER_CONNECTIONS = "getInstagramUserConnections"
GET_INSTAGRAM_POST_INTERACTING_USERS = "getInstagramPostInteractingUsers"
GET_INSTAGRAM_USERS_BY_KEYWORDS = "getInstagramUsersByKeywords"

SEARCH_REDDIT_POSTS = "getRedditPostsByKeywords"
GET_REDDIT_POST_WITH_COMMENTS = "getRedditPostWithCommentsById"
SEARCH_REDDIT_COMMENTS = "getRedditCommentsByKeywords"
GET_REDDIT_USER = "getRedditUser"
SEARCH_REDDIT_USERS = "searchRedditUsers"
GET_REDDIT_USERS_BY_KEYWORDS = "getRedditUsersByKeywords"
SEARCH_REDDIT_SUBREDDITS = "searchRedditSubreddits"
GET_REDDIT_SUBREDDIT_WITH_POSTS = "getRedditSubredditWithPostsByName"
GET_REDDIT_SUBREDDITS_BY_KEYWORDS = "getRedditSubredditsByKeywords"

GET_TIKTOK_POSTS_BY_IDS = "getTiktokPostsByIds"
GET_TIKTOK_POSTS_BY_USER = "getTiktokPostsByUser"
SEARCH_TIKTOK_POSTS = "getTiktokPostsByKeywords"
GET_TIKTOK_COMMENTS = "getTiktokCommentsByPostId"
GET_TIKTOK_USER = "getTiktokUser"
SEARCH_TIKTOK_USERS = "searchTiktokUsers"
GET_TIKTOK_USERS_BY_KEYWORDS = "getTiktokUsersByKeywords"


TWITTER_TOOLS = SimpleNamespace(
    GET_TWITTER_POSTS_BY_IDS=GET_TWITTER_POSTS_BY_IDS,
    GET_TWITTER_POSTS_BY_AUTHOR=GET_TWITTER_POSTS_BY_AUTHOR,
    SEARCH_TWITTER_POSTS=SEARCH_TWITTER_POSTS,
    GET_TWITTER_RETWEETS=GET_TWITTER_RETWEETS,
    GET_TWITTER_QUOTES=GET_TWITTER_QUOTES,
    GET_TWITTER_COMMENTS=GET_TWITTER_COMMENTS,
    GET_TWITTER_POST_INTERACTING_USERS=GET_TWITTER_POST_INTERACTING_USERS,
    COUNT_TWEETS=COUNT_TWEETS,
    GET_TWITTER_USER=GET_TWITTER_USER,
    GET_TWITTER_USERS=GET_TWITTER_USERS,
    SEARCH_TWITTER_USERS=SEARCH_TWITTER_USERS,
    GET_TWITTER_USER_CONNECTIONS=GET_TWITTER_USER_CONNECTIONS,
    GET_TWITTER_USERS_BY_KEYWORDS=GET_TWITTER_USERS_BY_KEYWORDS,
)

INSTAGRAM_TOOLS = SimpleNamespace(
    GET_INSTAGRAM_POSTS_BY_IDS=GET_INSTAGRAM_POSTS_BY_IDS,
    GET_INSTAGRAM_POSTS_BY_USER=GET_INSTAGRAM_POSTS_BY_USER,
    SEARCH_INSTAGRAM_POSTS=SEARCH_INSTAGRAM_POSTS,
    GET_INSTAGRAM_COMMENTS=GET_INSTAGRAM_COMMENTS,
    GET_INSTAGRAM_USER=GET_INSTAGRAM_USER,
    SEARCH_INSTAGRAM_USERS=SEARCH_INSTAGRAM_USERS,
    GET_INSTAGRAM_USER_CONNECTIONS=GET_INSTAGRAM_USER_CONNECTIONS,
    GET_INSTAGRAM_POST_INTERACTING_USERS=GET_INSTAGRAM_POST_INTERACTING_USERS,
    GET_INSTAGRAM_USERS_BY_KEYWORDS=GET_INSTAGRAM_USERS_BY_KEYWORDS,
)

REDDIT_TOOLS = SimpleNamespace(
    SEARCH_REDDIT_POSTS=SEARCH_REDDIT_POSTS,
    GET_REDDIT_POST_WITH_COMMENTS=GET_REDDIT_POST_WITH_COMMENTS,
    SEARCH_REDDIT_COMMENTS=SEARCH_REDDIT_COMMENTS,
    GET_REDDIT_USER=GET_REDDIT_USER,
    SEARCH_REDDIT_USERS=SEARCH_REDDIT_USERS,
    GET_REDDIT_USERS_BY_KEYWORDS=GET_REDDIT_USERS_BY_KEYWORDS,
    SEARCH_REDDIT_SUBREDDITS=SEARCH_REDDIT_SUBREDDITS,
    GET_REDDIT_SUBREDDIT_WITH_POSTS=GET_REDDIT_SUBREDDIT_WITH_POSTS,
    GET_REDDIT_SUBREDDITS_BY_KEYWORDS=GET_REDDIT_SUBREDDITS_BY_KEYWORDS,
)

TIKTOK_TOOLS = SimpleNamespace(
    GET_TIKTOK_POSTS_BY_IDS=GET_TIKTOK_POSTS_BY_IDS,
    GET_TIKTOK_POSTS_BY_USER=GET_TIKTOK_POSTS_BY_USER,
    SEARCH_TIKTOK_POSTS=SEARCH_TIKTOK_POSTS,
    GET_TIKTOK_COMMENTS=GET_TIKTOK_COMMENTS,
    GET_TIKTOK_USER=GET_TIKTOK_USER,
    SEARCH_TIKTOK_USERS=SEARCH_TIKTOK_USERS,
    GET_TIKTOK_USERS_BY_KEYWORDS=GET_TIKTOK_USERS_BY_KEYWORDS,
)
