import { BodyRequest, QueryRequest } from "./interfaces/api.interface"; import { DiscordAuthResponse, DiscordGetAuthorizeResponse, DiscordGetAuthorizeUrlRequest, DiscordLoginRequest, DiscordRegisterBindRequest, DiscordRegisterRequest } from "@/dtos/auth/oauth/discord"; import { EmailSendCodeRequest, EmailSendCodeResponse, EmailVerifyCodeRequest, EmailVerifyCodeResponse } from "@/dtos/email"; import { TokenResponse } from "@/dtos/auth"; export default interface OAuthDiscordApi { getAuthorizeURL(req: QueryRequest): Promise; authenticateAndLogin(req: BodyRequest): Promise; sendCodeForDiscord(req: BodyRequest): Promise; verifyCodeForDiscord(req: QueryRequest): Promise; registerAndLogin(req: BodyRequest): Promise; registerBindAndLogin(req: BodyRequest): Promise; }