UNPKG

@fairmint/canton-node-sdk

Version:
62 lines 2.71 kB
import { z } from 'zod'; import { type BaseClient } from '../../../../../../core'; import type { paths } from '../../../../../../generated/canton/community/ledger/ledger-json-api/src/test/resources/json-api-docs/openapi'; type GeneratedResponse = paths['/v2/parties/external/generate-topology']['post']['responses']['200']['content']['application/json']; export declare const GenerateExternalPartyTopologyParamsSchema: z.ZodObject<{ synchronizer: z.ZodString; partyHint: z.ZodString; publicKey: z.ZodObject<{ format: z.ZodString; keyData: z.ZodString; keySpec: z.ZodString; }, z.core.$strip>; localParticipantObservationOnly: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>; otherConfirmingParticipantUids: z.ZodOptional<z.ZodArray<z.ZodString>>; confirmationThreshold: z.ZodOptional<z.ZodDefault<z.ZodNumber>>; observingParticipantUids: z.ZodOptional<z.ZodArray<z.ZodString>>; }, z.core.$strip>; export type GenerateExternalPartyTopologyParams = z.infer<typeof GenerateExternalPartyTopologyParamsSchema>; export type GenerateExternalPartyTopologyResponse = GeneratedResponse; /** * Generate a topology for an external party * * This endpoint generates the topology transactions and multi-hash needed to onboard an external party. The multi-hash * should be signed using the external party's private key and then submitted to the allocate endpoint along with the * generated topology transactions. * * @example * ```typescript * const result = await client.generateExternalPartyTopology({ * synchronizer: 'global-synchronizer', * partyHint: 'alice', * publicKey: { * format: 'CRYPTO_KEY_FORMAT_DER_X509_SUBJECT_PUBLIC_KEY_INFO', * keyData: 'base64-encoded-public-key', * keySpec: 'SIGNING_KEY_SPEC_EC_CURVE25519' * } * }); * // result.multiHash - sign this with the external party's private key * // result.topologyTransactions - pass these to allocate endpoint * // result.partyId - the generated party ID * ```; */ export declare const GenerateExternalPartyTopology: new (client: BaseClient) => import("../../../../../../core").ApiOperation<{ synchronizer: string; partyHint: string; publicKey: { format: string; keyData: string; keySpec: string; }; localParticipantObservationOnly?: boolean | undefined; otherConfirmingParticipantUids?: string[] | undefined; confirmationThreshold?: number | undefined; observingParticipantUids?: string[] | undefined; }, { partyId: string; publicKeyFingerprint: string; topologyTransactions?: string[]; multiHash: string; }>; export {}; //# sourceMappingURL=generate-topology.d.ts.map