Convert boundThreepid to TS

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
This commit is contained in:
Šimon Brandner 2021-09-27 09:31:34 +02:00
parent 0cfa2a58c7
commit e30d4e6746
No known key found for this signature in database
GPG key ID: 55C211A1226CB17D
2 changed files with 8 additions and 4 deletions

View file

@ -14,9 +14,13 @@ See the License for the specific language governing permissions and
limitations under the License. limitations under the License.
*/ */
import { IThreepid, ThreepidMedium } from "matrix-js-sdk/src/@types/threepids";
import { MatrixClient } from "matrix-js-sdk/src/client";
import IdentityAuthClient from './IdentityAuthClient'; import IdentityAuthClient from './IdentityAuthClient';
export async function getThreepidsWithBindStatus(client, filterMedium) { export async function getThreepidsWithBindStatus(
client: MatrixClient, filterMedium?: ThreepidMedium,
): Promise<IThreepid[]> {
const userId = client.getUserId(); const userId = client.getUserId();
let { threepids } = await client.getThreePids(); let { threepids } = await client.getThreePids();
@ -31,7 +35,7 @@ export async function getThreepidsWithBindStatus(client, filterMedium) {
const identityAccessToken = await authClient.getAccessToken({ check: false }); const identityAccessToken = await authClient.getAccessToken({ check: false });
// Restructure for lookup query // Restructure for lookup query
const query = threepids.map(({ medium, address }) => [medium, address]); const query = threepids.map(({ medium, address }): [string, string] => [medium, address]);
const lookupResults = await client.bulkLookupThreePids(query, identityAccessToken); const lookupResults = await client.bulkLookupThreePids(query, identityAccessToken);
// Record which are already bound // Record which are already bound

View file

@ -16,8 +16,8 @@ limitations under the License.
// Returns a promise which resolves when the input promise resolves with its value // Returns a promise which resolves when the input promise resolves with its value
// or when the timeout of ms is reached with the value of given timeoutValue // or when the timeout of ms is reached with the value of given timeoutValue
export async function timeout<T>(promise: Promise<T>, timeoutValue: T, ms: number): Promise<T> { export async function timeout<T, Y>(promise: Promise<T>, timeoutValue: Y, ms: number): Promise<T | Y> {
const timeoutPromise = new Promise<T>((resolve) => { const timeoutPromise = new Promise<T | Y>((resolve) => {
const timeoutId = setTimeout(resolve, ms, timeoutValue); const timeoutId = setTimeout(resolve, ms, timeoutValue);
promise.then(() => { promise.then(() => {
clearTimeout(timeoutId); clearTimeout(timeoutId);