{"id":22105256,"url":"https://github.com/zhangyu1818/type-challenges-answer","last_synced_at":"2025-03-24T02:45:04.517Z","repository":{"id":179090096,"uuid":"662848368","full_name":"zhangyu1818/type-challenges-answer","owner":"zhangyu1818","description":"type-chanllenges answer","archived":false,"fork":false,"pushed_at":"2023-09-28T08:31:06.000Z","size":221,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-29T08:44:59.081Z","etag":null,"topics":["type-challenges"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/zhangyu1818.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2023-07-06T02:48:43.000Z","updated_at":"2023-07-18T09:35:30.000Z","dependencies_parsed_at":"2023-09-21T15:30:18.524Z","dependency_job_id":null,"html_url":"https://github.com/zhangyu1818/type-challenges-answer","commit_stats":null,"previous_names":["zhangyu1818/type-challenges-answer"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zhangyu1818%2Ftype-challenges-answer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zhangyu1818%2Ftype-challenges-answer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zhangyu1818%2Ftype-challenges-answer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zhangyu1818%2Ftype-challenges-answer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zhangyu1818","download_url":"https://codeload.github.com/zhangyu1818/type-challenges-answer/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245200674,"owners_count":20576673,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["type-challenges"],"created_at":"2024-12-01T06:40:11.645Z","updated_at":"2025-03-24T02:45:04.483Z","avatar_url":"https://github.com/zhangyu1818.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# type-challenges-answer\n\nAnswers of [type-challenges](https://github.com/type-challenges/type-challenges), I have added comments to some questions that I think are quite challenging.\n\n## Easy\n\n[00004-easy-pick](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/00004-easy-pick.ts)\n\n[00007-easy-readonly](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/00007-easy-readonly.ts)\n\n[00011-easy-tuple-to-object](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/00011-easy-tuple-to-object.ts)\n\n[00014-easy-first](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/00014-easy-first.ts)\n\n[00018-easy-tuple-length](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/00018-easy-tuple-length.ts)\n\n[00043-easy-exclude](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/00043-easy-exclude.ts)\n\n[00189-easy-awaited](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/00189-easy-awaited.ts)\n\n[00268-easy-if](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/00268-easy-if.ts)\n\n[00533-easy-concat](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/00533-easy-concat.ts)\n\n[00898-easy-includes](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/00898-easy-includes.ts)\n\n[03057-easy-push](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/03057-easy-push.ts)\n\n[03060-easy-unshift](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/03060-easy-unshift.ts)\n\n[03312-easy-parameters](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/03312-easy-parameters.ts)\n\n## Medium\n\n[00002-medium-return-type](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/00002-medium-return-type.ts)\n\n[00003-medium-omit](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/00003-medium-omit.ts)\n\n[00008-medium-readonly-2](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/00008-medium-readonly-2.ts)\n\n[00009-medium-deep-readonly](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/00009-medium-deep-readonly.ts)\n\n[00010-medium-tuple-to-union](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/00010-medium-tuple-to-union.ts)\n\n[00012-medium-chainable-options](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/00012-medium-chainable-options.ts)\n\n[00015-medium-last](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/00015-medium-last.ts)\n\n[00016-medium-pop](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/00016-medium-pop.ts)\n\n[00020-medium-promise-all](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/00020-medium-promise-all.ts)\n\n[00062-medium-type-lookup](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/00062-medium-type-lookup.ts)\n\n[00106-medium-trimleft](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/00106-medium-trimleft.ts)\n\n[00108-medium-trim](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/00108-medium-trim.ts)\n\n[00110-medium-capitalize](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/00110-medium-capitalize.ts)\n\n[00116-medium-replace](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/00116-medium-replace.ts)\n\n[00119-medium-replaceall](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/00119-medium-replaceall.ts)\n\n[00191-medium-append-argument](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/00191-medium-append-argument.ts)\n\n[00296-medium-permutation](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/00296-medium-permutation.ts)\n\n[00298-medium-length-of-string](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/00298-medium-length-of-string.ts)\n\n[00459-medium-flatten](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/00459-medium-flatten.ts)\n\n[00527-medium-append-to-object](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/00527-medium-append-to-object.ts)\n\n[00529-medium-absolute](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/00529-medium-absolute.ts)\n\n[00531-medium-string-to-union](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/00531-medium-string-to-union.ts)\n\n[00599-medium-merge](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/00599-medium-merge.ts)\n\n[00612-medium-kebabcase](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/00612-medium-kebabcase.ts)\n\n[00645-medium-diff](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/00645-medium-diff.ts)\n\n[00949-medium-anyof](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/00949-medium-anyof.ts)\n\n[01042-medium-isnever](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/01042-medium-isnever.ts)\n\n[01097-medium-isunion](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/01097-medium-isunion.ts)\n\n[01130-medium-replacekeys](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/01130-medium-replacekeys.ts)\n\n[01367-medium-remove-index-signature](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/01367-medium-remove-index-signature.ts)\n\n[01978-medium-percentage-parser](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/01978-medium-percentage-parser.ts)\n\n[02070-medium-drop-char](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/02070-medium-drop-char.ts)\n\n[02257-medium-minusone](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/02257-medium-minusone.ts)\n\n[02595-medium-pickbytype](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/02595-medium-pickbytype.ts)\n\n[02688-medium-startswith](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/02688-medium-startswith.ts)\n\n[02693-medium-endswith](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/02693-medium-endswith.ts)\n\n[02757-medium-partialbykeys](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/02757-medium-partialbykeys.ts)\n\n[02759-medium-requiredbykeys](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/02759-medium-requiredbykeys.ts)\n\n[02793-medium-mutable](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/02793-medium-mutable.ts)\n\n[02852-medium-omitbytype](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/02852-medium-omitbytype.ts)\n\n[02946-medium-objectentries](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/02946-medium-objectentries.ts)\n\n[03062-medium-shift](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/03062-medium-shift.ts)\n\n[03188-medium-tuple-to-nested-object](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/03188-medium-tuple-to-nested-object.ts)\n\n[03192-medium-reverse](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/03192-medium-reverse.ts)\n\n[03196-medium-flip-arguments](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/03196-medium-flip-arguments.ts)\n\n[03243-medium-flattendepth](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/03243-medium-flattendepth.ts)\n\n[03326-medium-bem-style-string](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/03326-medium-bem-style-string.ts)\n\n[03376-medium-inordertraversal](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/03376-medium-inordertraversal.ts)\n\n[04179-medium-flip](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/04179-medium-flip.ts)\n\n[04182-medium-fibonacci-sequence](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/04182-medium-fibonacci-sequence.ts)\n\n[04260-medium-nomiwase](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/04260-medium-nomiwase.ts)\n\n[04425-medium-greater-than](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/04425-medium-greater-than.ts)\n\n[04471-medium-zip](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/04471-medium-zip.ts)\n\n[04484-medium-istuple](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/04484-medium-istuple.ts)\n\n[04499-medium-chunk](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/04499-medium-chunk.ts)\n\n[04518-medium-fill](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/04518-medium-fill.ts)\n\n[04803-medium-trim-right](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/04803-medium-trim-right.ts)\n\n[05117-medium-without](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/05117-medium-without.ts)\n\n[05140-medium-trunc](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/05140-medium-trunc.ts)\n\n[05153-medium-indexof](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/05153-medium-indexof.ts)\n\n[05310-medium-join](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/05310-medium-join.ts)\n\n[05317-medium-lastindexof](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/05317-medium-lastindexof.ts)\n\n[05360-medium-unique](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/05360-medium-unique.ts)\n\n[05821-medium-maptypes](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/05821-medium-maptypes.ts)\n\n[07544-medium-construct-tuple](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/07544-medium-construct-tuple.ts)\n\n[08640-medium-number-range](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/08640-medium-number-range.ts)\n\n[08767-medium-combination](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/08767-medium-combination.ts)\n\n[08987-medium-subsequence](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/08987-medium-subsequence.ts)\n\n[09142-medium-checkrepeatedchars](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/09142-medium-checkrepeatedchars.ts)\n\n[09286-medium-firstuniquecharindex](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/09286-medium-firstuniquecharindex.ts)\n\n[09616-medium-parse-url-params](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/09616-medium-parse-url-params.ts)\n\n[09896-medium-get-middle-element](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/09896-medium-get-middle-element.ts)\n\n[09898-medium-zhao-chu-mu-biao-shu-zu-zhong-zhi-chu-xian-guo-yi-ci-de-yuan-su](https://github.com/zhangyu1818/type-challenges-answer/blob/main/src/09898-medium-zhao-chu-mu-biao-shu-zu-zhong-zhi-chu-xian-guo-yi-ci-de-yuan-su.ts)\n\n## Hard\n\n## Extreme\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzhangyu1818%2Ftype-challenges-answer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzhangyu1818%2Ftype-challenges-answer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzhangyu1818%2Ftype-challenges-answer/lists"}