import { Device, MatrixClient } from "matrix-js-sdk/src/matrix";
/**
 * Get crypto information on a specific device.
 *
 * Only devices with Crypto support are returned. If the MatrixClient doesn't support cryptography, `undefined` is
 * returned.
 *
 * @param client  - Matrix Client.
 * @param userId  - ID of the user owning the device.
 * @param deviceId - ID of the device.
 * @param downloadUncached - If true, download the device list for users whose device list we are not
 *    currently tracking. Defaults to false.
 *
 * @returns Information on the device if it is known.
 */
export declare function getDeviceCryptoInfo(client: MatrixClient, userId: string, deviceId: string, downloadUncached?: boolean): Promise<Device | undefined>;
/**
 * Get the IDs of the given user's devices.
 *
 * Only devices with Crypto support are returned. If the MatrixClient doesn't support cryptography, an empty Set is
 * returned.
 *
 * @param client  - Matrix Client.
 * @param userId  - ID of the user to query.
 */
export declare function getUserDeviceIds(client: MatrixClient, userId: string): Promise<Set<string>>;
