From f3539bc989fec09e9c69dd4f06c3feb88a0d7058 Mon Sep 17 00:00:00 2001 From: RanolP Date: Mon, 13 Sep 2021 23:31:05 +0000 Subject: [PATCH] Follow-up solvedac/unofficial-documentation --- dist/apis/DefaultApi.d.ts | 8 -- dist/apis/DefaultApi.js | 20 ---- dist/apis/UserApi.d.ts | 15 ++- dist/apis/UserApi.js | 29 +++++ dist/models/index.d.ts | 215 +++++++++++++++++++++++++++++++++++++ dist/models/index.js | 10 ++ dist/models/mod.d.ts | 109 ------------------- src/apis/DefaultApi.ts | 25 ----- src/apis/UserApi.ts | 41 ++++++++ src/models/index.ts | 216 ++++++++++++++++++++++++++++++++++++++ src/models/mod.ts | 216 ++++++++++++++++++++++++++++++++++++++ 11 files changed, 741 insertions(+), 163 deletions(-) diff --git a/dist/apis/DefaultApi.d.ts b/dist/apis/DefaultApi.d.ts index 85a6d1b..102143c 100644 --- a/dist/apis/DefaultApi.d.ts +++ b/dist/apis/DefaultApi.d.ts @@ -126,12 +126,4 @@ export declare class DefaultApi extends runtime.BaseAPI { * TODO */ userProblemTagStatsGet(initOverrides?: RequestInit): Promise; - /** - * TODO - */ - userShowGetRaw(initOverrides?: RequestInit): Promise>; - /** - * TODO - */ - userShowGet(initOverrides?: RequestInit): Promise; } diff --git a/dist/apis/DefaultApi.js b/dist/apis/DefaultApi.js index 03dd453..03be1de 100644 --- a/dist/apis/DefaultApi.js +++ b/dist/apis/DefaultApi.js @@ -296,24 +296,4 @@ export class DefaultApi extends runtime.BaseAPI { async userProblemTagStatsGet(initOverrides) { await this.userProblemTagStatsGetRaw(initOverrides); } - /** - * TODO - */ - async userShowGetRaw(initOverrides) { - const queryParameters = {}; - const headerParameters = {}; - const response = await this.request({ - path: `/user/show`, - method: 'GET', - headers: headerParameters, - query: queryParameters, - }, initOverrides); - return new runtime.VoidApiResponse(response); - } - /** - * TODO - */ - async userShowGet(initOverrides) { - await this.userShowGetRaw(initOverrides); - } } diff --git a/dist/apis/UserApi.d.ts b/dist/apis/UserApi.d.ts index 5c89a1e..3761cf5 100644 --- a/dist/apis/UserApi.d.ts +++ b/dist/apis/UserApi.d.ts @@ -10,7 +10,10 @@ * Do not edit the class manually. */ import * as runtime from '../runtime.js'; -import { InlineResponse2006 } from '../models/index.js'; +import { FullUser, InlineResponse2006 } from '../models/index.js'; +export interface GetUserRequest { + handle: string; +} export interface GetUserProblemStatsRequest { handle: string; } @@ -18,6 +21,16 @@ export interface GetUserProblemStatsRequest { * */ export declare class UserApi extends runtime.BaseAPI { + /** + * 사용자의 정보를 가져옵니다. 만약 로그인한 경우, 라이벌 여부도 가져옵니다. + * 사용자 정보 가져오기 + */ + getUserRaw(requestParameters: GetUserRequest, initOverrides?: RequestInit): Promise>; + /** + * 사용자의 정보를 가져옵니다. 만약 로그인한 경우, 라이벌 여부도 가져옵니다. + * 사용자 정보 가져오기 + */ + getUser(requestParameters: GetUserRequest, initOverrides?: RequestInit): Promise; /** * 사용자가 푼 문제 개수를 문제 수준별로 가져옵니다. * 사용자가 푼 문제 개수 수준별로 가져오기 diff --git a/dist/apis/UserApi.js b/dist/apis/UserApi.js index b99870e..bfddecf 100644 --- a/dist/apis/UserApi.js +++ b/dist/apis/UserApi.js @@ -16,6 +16,35 @@ import * as runtime from '../runtime.js'; * */ export class UserApi extends runtime.BaseAPI { + /** + * 사용자의 정보를 가져옵니다. 만약 로그인한 경우, 라이벌 여부도 가져옵니다. + * 사용자 정보 가져오기 + */ + async getUserRaw(requestParameters, initOverrides) { + if (requestParameters.handle === null || requestParameters.handle === undefined) { + throw new runtime.RequiredError('handle', 'Required parameter requestParameters.handle was null or undefined when calling getUser.'); + } + const queryParameters = {}; + if (requestParameters.handle !== undefined) { + queryParameters['handle'] = requestParameters.handle; + } + const headerParameters = {}; + const response = await this.request({ + path: `/user/show`, + method: 'GET', + headers: headerParameters, + query: queryParameters, + }, initOverrides); + return new runtime.JSONApiResponse(response); + } + /** + * 사용자의 정보를 가져옵니다. 만약 로그인한 경우, 라이벌 여부도 가져옵니다. + * 사용자 정보 가져오기 + */ + async getUser(requestParameters, initOverrides) { + const response = await this.getUserRaw(requestParameters, initOverrides); + return await response.value(); + } /** * 사용자가 푼 문제 개수를 문제 수준별로 가져옵니다. * 사용자가 푼 문제 개수 수준별로 가져오기 diff --git a/dist/models/index.d.ts b/dist/models/index.d.ts index 710b15c..2da202a 100644 --- a/dist/models/index.d.ts +++ b/dist/models/index.d.ts @@ -29,6 +29,221 @@ export interface Badge { */ displayDescription: string; } +/** + * 사용자 정보입니다. + * @export + * @interface FullUser + */ +export interface FullUser { + /** + * 사용자명입니다. + * @type {string} + * @memberof FullUser + */ + handle: string; + /** + * 사용자의 자기소개입니다. + * @type {string} + * @memberof FullUser + */ + bio: string; + /** + * 사용자가 속한 조직 목록입니다. + * @type {Array} + * @memberof FullUser + */ + organizations: Array; + /** + * + * @type {Badge} + * @memberof FullUser + */ + badge?: Badge; + /** + * + * @type {UserBackground} + * @memberof FullUser + */ + background: UserBackground; + /** + * 사용자의 프로필 사진으로 가는 하이퍼링크입니다. + * @type {string} + * @memberof FullUser + */ + profileImageUrl: string | null; + /** + * 사용자가 푼 문제 수입니다. + * @type {number} + * @memberof FullUser + */ + solvedCount: number; + /** + * 사용자가 난이도 기여를 한 횟수입니다. + * @type {number} + * @memberof FullUser + */ + voteCount: number; + /** + * 사용자가 여태까지 획득한 경험치량입니다. + * @type {number} + * @memberof FullUser + */ + exp: number; + /** + * Bronze V를 1, Bronze IV를 2, ..., Ruby I을 30, Master를 31로 표현하는 사용자 티어입니다. + * 자세한 값 정보는 표1. 수치 - 이름 표를 펼쳐 참고하십시오. + * + *
+ * + * 표1. 수치 - 이름 표 + * + * + * | 수치 | 이름 | + * | ---: | ------------ | + * | 1 | Bronze V | + * | 2 | Bronze IV | + * | 3 | Bronze III | + * | 4 | Bronze II | + * | 5 | Bronze I | + * | 6 | Silver V | + * | 7 | Silver IV | + * | 8 | Silver III | + * | 9 | Silver II | + * | 10 | Silver I | + * | 11 | Gold V | + * | 12 | Gold IV | + * | 13 | Gold III | + * | 14 | Gold II | + * | 15 | Gold I | + * | 16 | Platinum V | + * | 17 | Platinum IV | + * | 18 | Platinum III | + * | 19 | Platinum II | + * | 20 | Platinum I | + * | 21 | Diamond V | + * | 22 | Diamond IV | + * | 23 | Diamond III | + * | 24 | Diamond II | + * | 25 | Diamond I | + * | 26 | Ruby V | + * | 27 | Ruby IV | + * | 28 | Ruby III | + * | 29 | Ruby II | + * | 30 | Ruby I | + * | 31 | Master | + * + *
+ * @type {number} + * @memberof FullUser + */ + tier: number; + /** + * 사용자의 레이팅입니다. + * @type {number} + * @memberof FullUser + */ + rating: number; + /** + * 푼 문제의 난이도 합으로 계산한 사용자의 레이팅입니다. + * @type {number} + * @memberof FullUser + */ + ratingByProblemsSum: number; + /** + * 취득한 클래스에 따른 사용자의 레이팅입니다. + * @type {number} + * @memberof FullUser + */ + ratingByClass: number; + /** + * 푼 문제 수로 계산한 사용자의 레이팅입니다. + * @type {number} + * @memberof FullUser + */ + ratingBySolvedCount: number; + /** + * 문제 난이도에 기여한 횟수로 계산한 사용자의 레이팅입니다. + * @type {number} + * @memberof FullUser + */ + ratingByVoteCount: number; + /** + * 사용자가 취득한 Class입니다. + * @type {number} + * @memberof FullUser + */ + _class: number; + /** + * 사용자가 취득한 Class의 수준입니다. + * @type {string} + * @memberof FullUser + */ + classDecoration: FullUserClassDecorationEnum; + /** + * 사용자의 라이벌 수입니다. + * @type {number} + * @memberof FullUser + */ + rivalCount: number; + /** + * 사용자의 역라이벌 수입니다. + * @type {number} + * @memberof FullUser + */ + reverseRivalCount: number; + /** + * 최대 연속 문제 풀이일 수입니다. + * @type {number} + * @memberof FullUser + */ + maxStreak: number; + /** + * 사용자의 순위입니다. + * @type {number} + * @memberof FullUser + */ + rank?: number; + /** + * 라이벌 여부입니다. + * @type {boolean} + * @memberof FullUser + */ + isRival?: boolean; + /** + * 역라이벌 여부입니다. + * @type {boolean} + * @memberof FullUser + */ + isReverseRival?: boolean; +} +/** +* @export +* @enum {string} +*/ +export declare enum FullUserClassDecorationEnum { + None = "none", + Silver = "silver", + Gold = "gold" +} +/** + * + * @export + * @interface FullUserAllOf + */ +export interface FullUserAllOf { + /** + * 라이벌 여부입니다. + * @type {boolean} + * @memberof FullUserAllOf + */ + isRival?: boolean; + /** + * 역라이벌 여부입니다. + * @type {boolean} + * @memberof FullUserAllOf + */ + isReverseRival?: boolean; +} /** * 난이도 아이콘 표시 정책입니다. * @export diff --git a/dist/models/index.js b/dist/models/index.js index e740fac..335577f 100644 --- a/dist/models/index.js +++ b/dist/models/index.js @@ -1,3 +1,13 @@ +/** +* @export +* @enum {string} +*/ +export var FullUserClassDecorationEnum; +(function (FullUserClassDecorationEnum) { + FullUserClassDecorationEnum["None"] = "none"; + FullUserClassDecorationEnum["Silver"] = "silver"; + FullUserClassDecorationEnum["Gold"] = "gold"; +})(FullUserClassDecorationEnum || (FullUserClassDecorationEnum = {})); /** * 난이도 아이콘 표시 정책입니다. * @export diff --git a/dist/models/mod.d.ts b/dist/models/mod.d.ts index 52b3a98..710b15c 100644 --- a/dist/models/mod.d.ts +++ b/dist/models/mod.d.ts @@ -797,115 +797,6 @@ export interface RankedUserAllOf { */ rank?: number; } -/** - * 문제 정보입니다. - * @export - * @interface Schema - */ -export interface Schema { - /** - * 문제 ID입니다. - * @type {number} - * @memberof Schema - */ - problemId?: number; - /** - * 한국어 문제 제목입니다. HTML 엔티티나 LaTeX 수식을 포함할 수 있습니다. - * @type {string} - * @memberof Schema - */ - titleKo?: string; - /** - * 채점 가능 여부입니다. - * @type {boolean} - * @memberof Schema - */ - isSolvable?: boolean; - /** - * 부분 점수 혹은 서브태스크 문제 여부입니다. - * @type {boolean} - * @memberof Schema - */ - isPartial?: boolean; - /** - * 맞은 사람 수입니다. - * @type {number} - * @memberof Schema - */ - acceptedUserCount?: number; - /** - * Unrated를 0, Bronze V를 1, ... Ruby II를 29, Ruby I을 30으로 표현하는 문제 레벨입니다. - * 자세한 값 정보는 표1. 수치 - 이름 표를 펼쳐 참고하십시오. - * - *
- * - * 표1. 수치 - 이름 표 - * - * - * | 수치 | 이름 | - * | ---: | ------------ | - * | 0 | Unrated | - * | 1 | Bronze V | - * | 2 | Bronze IV | - * | 3 | Bronze III | - * | 4 | Bronze II | - * | 5 | Bronze I | - * | 6 | Silver V | - * | 7 | Silver IV | - * | 8 | Silver III | - * | 9 | Silver II | - * | 10 | Silver I | - * | 11 | Gold V | - * | 12 | Gold IV | - * | 13 | Gold III | - * | 14 | Gold II | - * | 15 | Gold I | - * | 16 | Platinum V | - * | 17 | Platinum IV | - * | 18 | Platinum III | - * | 19 | Platinum II | - * | 20 | Platinum I | - * | 21 | Diamond V | - * | 22 | Diamond IV | - * | 23 | Diamond III | - * | 24 | Diamond II | - * | 25 | Diamond I | - * | 26 | Ruby V | - * | 27 | Ruby IV | - * | 28 | Ruby III | - * | 29 | Ruby II | - * | 30 | Ruby I | - * - *
- * @type {number} - * @memberof Schema - */ - level?: number; - /** - * 난이도 기여자의 수입니다. - * @type {number} - * @memberof Schema - */ - votedUserCount?: number; - /** - * 난이도 기여 제한 여부입니다. - * @type {boolean} - * @memberof Schema - */ - isLevelLocked?: boolean; - /** - * 평균 시도 횟수입니다. - * @type {number} - * @memberof Schema - */ - averageTries?: number; - /** - * 태그 목록입니다. - * @type {Array} - * @memberof Schema - */ - tags?: Array; -} /** * 사용자의 solved.ac 설정 정보입니다. * @export diff --git a/src/apis/DefaultApi.ts b/src/apis/DefaultApi.ts index 74a77e8..0926f8d 100644 --- a/src/apis/DefaultApi.ts +++ b/src/apis/DefaultApi.ts @@ -370,29 +370,4 @@ export class DefaultApi extends runtime.BaseAPI { await this.userProblemTagStatsGetRaw(initOverrides); } - /** - * TODO - */ - async userShowGetRaw(initOverrides?: RequestInit): Promise> { - const queryParameters: any = {}; - - const headerParameters: runtime.HTTPHeaders = {}; - - const response = await this.request({ - path: `/user/show`, - method: 'GET', - headers: headerParameters, - query: queryParameters, - }, initOverrides); - - return new runtime.VoidApiResponse(response); - } - - /** - * TODO - */ - async userShowGet(initOverrides?: RequestInit): Promise { - await this.userShowGetRaw(initOverrides); - } - } diff --git a/src/apis/UserApi.ts b/src/apis/UserApi.ts index c3b3fa9..0fd9c85 100644 --- a/src/apis/UserApi.ts +++ b/src/apis/UserApi.ts @@ -15,9 +15,14 @@ import * as runtime from '../runtime.js'; import { + FullUser, InlineResponse2006, } from '../models/index.js'; +export interface GetUserRequest { + handle: string; +} + export interface GetUserProblemStatsRequest { handle: string; } @@ -27,6 +32,42 @@ export interface GetUserProblemStatsRequest { */ export class UserApi extends runtime.BaseAPI { + /** + * 사용자의 정보를 가져옵니다. 만약 로그인한 경우, 라이벌 여부도 가져옵니다. + * 사용자 정보 가져오기 + */ + async getUserRaw(requestParameters: GetUserRequest, initOverrides?: RequestInit): Promise> { + if (requestParameters.handle === null || requestParameters.handle === undefined) { + throw new runtime.RequiredError('handle','Required parameter requestParameters.handle was null or undefined when calling getUser.'); + } + + const queryParameters: any = {}; + + if (requestParameters.handle !== undefined) { + queryParameters['handle'] = requestParameters.handle; + } + + const headerParameters: runtime.HTTPHeaders = {}; + + const response = await this.request({ + path: `/user/show`, + method: 'GET', + headers: headerParameters, + query: queryParameters, + }, initOverrides); + + return new runtime.JSONApiResponse(response); + } + + /** + * 사용자의 정보를 가져옵니다. 만약 로그인한 경우, 라이벌 여부도 가져옵니다. + * 사용자 정보 가져오기 + */ + async getUser(requestParameters: GetUserRequest, initOverrides?: RequestInit): Promise { + const response = await this.getUserRaw(requestParameters, initOverrides); + return await response.value(); + } + /** * 사용자가 푼 문제 개수를 문제 수준별로 가져옵니다. * 사용자가 푼 문제 개수 수준별로 가져오기 diff --git a/src/models/index.ts b/src/models/index.ts index f348da3..09c793e 100644 --- a/src/models/index.ts +++ b/src/models/index.ts @@ -31,6 +31,222 @@ export interface Badge { */ displayDescription: string; } +/** + * 사용자 정보입니다. + * @export + * @interface FullUser + */ +export interface FullUser { + /** + * 사용자명입니다. + * @type {string} + * @memberof FullUser + */ + handle: string; + /** + * 사용자의 자기소개입니다. + * @type {string} + * @memberof FullUser + */ + bio: string; + /** + * 사용자가 속한 조직 목록입니다. + * @type {Array} + * @memberof FullUser + */ + organizations: Array; + /** + * + * @type {Badge} + * @memberof FullUser + */ + badge?: Badge; + /** + * + * @type {UserBackground} + * @memberof FullUser + */ + background: UserBackground; + /** + * 사용자의 프로필 사진으로 가는 하이퍼링크입니다. + * @type {string} + * @memberof FullUser + */ + profileImageUrl: string | null; + /** + * 사용자가 푼 문제 수입니다. + * @type {number} + * @memberof FullUser + */ + solvedCount: number; + /** + * 사용자가 난이도 기여를 한 횟수입니다. + * @type {number} + * @memberof FullUser + */ + voteCount: number; + /** + * 사용자가 여태까지 획득한 경험치량입니다. + * @type {number} + * @memberof FullUser + */ + exp: number; + /** + * Bronze V를 1, Bronze IV를 2, ..., Ruby I을 30, Master를 31로 표현하는 사용자 티어입니다. + * 자세한 값 정보는 표1. 수치 - 이름 표를 펼쳐 참고하십시오. + * + *
+ * + * 표1. 수치 - 이름 표 + * + * + * | 수치 | 이름 | + * | ---: | ------------ | + * | 1 | Bronze V | + * | 2 | Bronze IV | + * | 3 | Bronze III | + * | 4 | Bronze II | + * | 5 | Bronze I | + * | 6 | Silver V | + * | 7 | Silver IV | + * | 8 | Silver III | + * | 9 | Silver II | + * | 10 | Silver I | + * | 11 | Gold V | + * | 12 | Gold IV | + * | 13 | Gold III | + * | 14 | Gold II | + * | 15 | Gold I | + * | 16 | Platinum V | + * | 17 | Platinum IV | + * | 18 | Platinum III | + * | 19 | Platinum II | + * | 20 | Platinum I | + * | 21 | Diamond V | + * | 22 | Diamond IV | + * | 23 | Diamond III | + * | 24 | Diamond II | + * | 25 | Diamond I | + * | 26 | Ruby V | + * | 27 | Ruby IV | + * | 28 | Ruby III | + * | 29 | Ruby II | + * | 30 | Ruby I | + * | 31 | Master | + * + *
+ * @type {number} + * @memberof FullUser + */ + tier: number; + /** + * 사용자의 레이팅입니다. + * @type {number} + * @memberof FullUser + */ + rating: number; + /** + * 푼 문제의 난이도 합으로 계산한 사용자의 레이팅입니다. + * @type {number} + * @memberof FullUser + */ + ratingByProblemsSum: number; + /** + * 취득한 클래스에 따른 사용자의 레이팅입니다. + * @type {number} + * @memberof FullUser + */ + ratingByClass: number; + /** + * 푼 문제 수로 계산한 사용자의 레이팅입니다. + * @type {number} + * @memberof FullUser + */ + ratingBySolvedCount: number; + /** + * 문제 난이도에 기여한 횟수로 계산한 사용자의 레이팅입니다. + * @type {number} + * @memberof FullUser + */ + ratingByVoteCount: number; + /** + * 사용자가 취득한 Class입니다. + * @type {number} + * @memberof FullUser + */ + _class: number; + /** + * 사용자가 취득한 Class의 수준입니다. + * @type {string} + * @memberof FullUser + */ + classDecoration: FullUserClassDecorationEnum; + /** + * 사용자의 라이벌 수입니다. + * @type {number} + * @memberof FullUser + */ + rivalCount: number; + /** + * 사용자의 역라이벌 수입니다. + * @type {number} + * @memberof FullUser + */ + reverseRivalCount: number; + /** + * 최대 연속 문제 풀이일 수입니다. + * @type {number} + * @memberof FullUser + */ + maxStreak: number; + /** + * 사용자의 순위입니다. + * @type {number} + * @memberof FullUser + */ + rank?: number; + /** + * 라이벌 여부입니다. + * @type {boolean} + * @memberof FullUser + */ + isRival?: boolean; + /** + * 역라이벌 여부입니다. + * @type {boolean} + * @memberof FullUser + */ + isReverseRival?: boolean; +} + +/** +* @export +* @enum {string} +*/ +export enum FullUserClassDecorationEnum { + None = 'none', + Silver = 'silver', + Gold = 'gold' +} +/** + * + * @export + * @interface FullUserAllOf + */ +export interface FullUserAllOf { + /** + * 라이벌 여부입니다. + * @type {boolean} + * @memberof FullUserAllOf + */ + isRival?: boolean; + /** + * 역라이벌 여부입니다. + * @type {boolean} + * @memberof FullUserAllOf + */ + isReverseRival?: boolean; +} /** * 난이도 아이콘 표시 정책입니다. * @export diff --git a/src/models/mod.ts b/src/models/mod.ts index f348da3..09c793e 100644 --- a/src/models/mod.ts +++ b/src/models/mod.ts @@ -31,6 +31,222 @@ export interface Badge { */ displayDescription: string; } +/** + * 사용자 정보입니다. + * @export + * @interface FullUser + */ +export interface FullUser { + /** + * 사용자명입니다. + * @type {string} + * @memberof FullUser + */ + handle: string; + /** + * 사용자의 자기소개입니다. + * @type {string} + * @memberof FullUser + */ + bio: string; + /** + * 사용자가 속한 조직 목록입니다. + * @type {Array} + * @memberof FullUser + */ + organizations: Array; + /** + * + * @type {Badge} + * @memberof FullUser + */ + badge?: Badge; + /** + * + * @type {UserBackground} + * @memberof FullUser + */ + background: UserBackground; + /** + * 사용자의 프로필 사진으로 가는 하이퍼링크입니다. + * @type {string} + * @memberof FullUser + */ + profileImageUrl: string | null; + /** + * 사용자가 푼 문제 수입니다. + * @type {number} + * @memberof FullUser + */ + solvedCount: number; + /** + * 사용자가 난이도 기여를 한 횟수입니다. + * @type {number} + * @memberof FullUser + */ + voteCount: number; + /** + * 사용자가 여태까지 획득한 경험치량입니다. + * @type {number} + * @memberof FullUser + */ + exp: number; + /** + * Bronze V를 1, Bronze IV를 2, ..., Ruby I을 30, Master를 31로 표현하는 사용자 티어입니다. + * 자세한 값 정보는 표1. 수치 - 이름 표를 펼쳐 참고하십시오. + * + *
+ * + * 표1. 수치 - 이름 표 + * + * + * | 수치 | 이름 | + * | ---: | ------------ | + * | 1 | Bronze V | + * | 2 | Bronze IV | + * | 3 | Bronze III | + * | 4 | Bronze II | + * | 5 | Bronze I | + * | 6 | Silver V | + * | 7 | Silver IV | + * | 8 | Silver III | + * | 9 | Silver II | + * | 10 | Silver I | + * | 11 | Gold V | + * | 12 | Gold IV | + * | 13 | Gold III | + * | 14 | Gold II | + * | 15 | Gold I | + * | 16 | Platinum V | + * | 17 | Platinum IV | + * | 18 | Platinum III | + * | 19 | Platinum II | + * | 20 | Platinum I | + * | 21 | Diamond V | + * | 22 | Diamond IV | + * | 23 | Diamond III | + * | 24 | Diamond II | + * | 25 | Diamond I | + * | 26 | Ruby V | + * | 27 | Ruby IV | + * | 28 | Ruby III | + * | 29 | Ruby II | + * | 30 | Ruby I | + * | 31 | Master | + * + *
+ * @type {number} + * @memberof FullUser + */ + tier: number; + /** + * 사용자의 레이팅입니다. + * @type {number} + * @memberof FullUser + */ + rating: number; + /** + * 푼 문제의 난이도 합으로 계산한 사용자의 레이팅입니다. + * @type {number} + * @memberof FullUser + */ + ratingByProblemsSum: number; + /** + * 취득한 클래스에 따른 사용자의 레이팅입니다. + * @type {number} + * @memberof FullUser + */ + ratingByClass: number; + /** + * 푼 문제 수로 계산한 사용자의 레이팅입니다. + * @type {number} + * @memberof FullUser + */ + ratingBySolvedCount: number; + /** + * 문제 난이도에 기여한 횟수로 계산한 사용자의 레이팅입니다. + * @type {number} + * @memberof FullUser + */ + ratingByVoteCount: number; + /** + * 사용자가 취득한 Class입니다. + * @type {number} + * @memberof FullUser + */ + _class: number; + /** + * 사용자가 취득한 Class의 수준입니다. + * @type {string} + * @memberof FullUser + */ + classDecoration: FullUserClassDecorationEnum; + /** + * 사용자의 라이벌 수입니다. + * @type {number} + * @memberof FullUser + */ + rivalCount: number; + /** + * 사용자의 역라이벌 수입니다. + * @type {number} + * @memberof FullUser + */ + reverseRivalCount: number; + /** + * 최대 연속 문제 풀이일 수입니다. + * @type {number} + * @memberof FullUser + */ + maxStreak: number; + /** + * 사용자의 순위입니다. + * @type {number} + * @memberof FullUser + */ + rank?: number; + /** + * 라이벌 여부입니다. + * @type {boolean} + * @memberof FullUser + */ + isRival?: boolean; + /** + * 역라이벌 여부입니다. + * @type {boolean} + * @memberof FullUser + */ + isReverseRival?: boolean; +} + +/** +* @export +* @enum {string} +*/ +export enum FullUserClassDecorationEnum { + None = 'none', + Silver = 'silver', + Gold = 'gold' +} +/** + * + * @export + * @interface FullUserAllOf + */ +export interface FullUserAllOf { + /** + * 라이벌 여부입니다. + * @type {boolean} + * @memberof FullUserAllOf + */ + isRival?: boolean; + /** + * 역라이벌 여부입니다. + * @type {boolean} + * @memberof FullUserAllOf + */ + isReverseRival?: boolean; +} /** * 난이도 아이콘 표시 정책입니다. * @export