import { APIResource } from "../core/resource.js"; export declare class KeyQuorums extends APIResource { } /** * A key quorum for authorizing wallet operations. */ export interface KeyQuorum { id: string; authorization_keys: Array; authorization_threshold: number | null; display_name: string | null; user_ids: Array | null; /** * List of nested key quorum IDs that are members of this key quorum. */ key_quorum_ids?: Array; } export declare namespace KeyQuorum { interface AuthorizationKey { display_name: string | null; public_key: string; } } /** * Headers required to authorize modifications to key quorums. */ export interface KeyQuorumAuthorizationHeaders { /** * ID of your Privy app. */ 'privy-app-id': string; /** * Request authorization signature. If multiple signatures are required, they * should be comma separated. */ 'privy-authorization-signature'?: string; /** * Request expiry. Value is a Unix timestamp in milliseconds representing the * deadline by which the request must be processed. */ 'privy-request-expiry'?: string; } /** * Request input for creating a key quorum. At least one of `user_ids`, * `public_keys`, or `key_quorum_ids` is required. */ export interface KeyQuorumCreateRequestBody { /** * The number of keys that must sign for an action to be valid. Must be less than * or equal to total number of key quorum members. */ authorization_threshold?: number; display_name?: string; /** * List of key quorum IDs that should be members of this key quorum. Key quorums * can only be nested 1 level deep. At least one of `user_ids`, `public_keys`, or * `key_quorum_ids` is required. */ key_quorum_ids?: Array; /** * List of P-256 public keys of the keys that should be authorized to sign on the * key quorum, in base64-encoded DER format. At least one of `user_ids`, * `public_keys`, or `key_quorum_ids` is required. */ public_keys?: Array; /** * List of user IDs of the users that should be authorized to sign on the key * quorum. At least one of `user_ids`, `public_keys`, or `key_quorum_ids` is * required. */ user_ids?: Array; } /** * Request input for updating an existing key quorum. At least one field must be * provided. */ export interface KeyQuorumUpdateRequestBody { /** * The number of keys that must sign for an action to be valid. Must be less than * or equal to total number of key quorum members. */ authorization_threshold?: number; display_name?: string; /** * List of key quorum IDs that should be members of this key quorum. Key quorums * can only be nested 1 level deep. */ key_quorum_ids?: Array; /** * List of P-256 public keys of the keys that should be authorized to sign on the * key quorum, in base64-encoded DER format. */ public_keys?: Array; /** * List of user IDs of the users that should be authorized to sign on the key * quorum. */ user_ids?: Array; } export declare namespace KeyQuorums { export { type KeyQuorum as KeyQuorum, type KeyQuorumAuthorizationHeaders as KeyQuorumAuthorizationHeaders, type KeyQuorumCreateRequestBody as KeyQuorumCreateRequestBody, type KeyQuorumUpdateRequestBody as KeyQuorumUpdateRequestBody, }; } //# sourceMappingURL=key-quorums.d.ts.map