diff --git a/packages/sns/src/index.ts b/packages/sns/src/index.ts index 7d46e2a53..5968dd3dd 100644 --- a/packages/sns/src/index.ts +++ b/packages/sns/src/index.ts @@ -50,6 +50,7 @@ export * from "./errors/governance.errors"; export * from "./errors/swap.errors"; export { SnsGovernanceCanister } from "./governance.canister"; export { SnsGovernanceTestCanister } from "./governance_test.canister"; +export * from "./optionals/optionals"; export { SnsRootCanister } from "./root.canister"; export * from "./sns"; export * from "./sns.wrapper"; diff --git a/packages/sns/src/optionals/optionals.spec.ts b/packages/sns/src/optionals/optionals.spec.ts new file mode 100644 index 000000000..b0d8fca33 --- /dev/null +++ b/packages/sns/src/optionals/optionals.spec.ts @@ -0,0 +1,17 @@ +import type { NeuronsFundParticipationConstraints as SnsNeuronsFundParticipationConstraints } from "../../candid/sns_swap"; +import { emptyOptionalsForSnsNeuronsFundParticipationConstraints } from "./optionals"; + +// If this file has a compilation error because new optional fields were added +// to a Candid type, add the empty optional field values to the corresponding +// `emptyOptionalsFor...` value in `./optionals.ts`. + +const testValueForSnsNeuronsFundParticipationConstraints: SnsNeuronsFundParticipationConstraints = + { + ...emptyOptionalsForSnsNeuronsFundParticipationConstraints, + coefficient_intervals: [], + }; + +// The real test is whether the types above are accepted by the compiler. +it("should have at least one test", () => { + expect(true).toBe(true); +}); diff --git a/packages/sns/src/optionals/optionals.ts b/packages/sns/src/optionals/optionals.ts new file mode 100644 index 000000000..2c0ffa2e1 --- /dev/null +++ b/packages/sns/src/optionals/optionals.ts @@ -0,0 +1,14 @@ +import type { NeuronsFundParticipationConstraints as SnsNeuronsFundParticipationConstraints } from "../../candid/sns_swap"; + +export interface NeuronsFundParticipationConstraints {} + +export const emptyOptionalsForSnsNeuronsFundParticipationConstraints: Pick< + SnsNeuronsFundParticipationConstraints, + | "max_neurons_fund_participation_icp_e8s" + | "min_direct_participation_threshold_icp_e8s" + | "ideal_matched_participation_function" +> = { + max_neurons_fund_participation_icp_e8s: [], + min_direct_participation_threshold_icp_e8s: [], + ideal_matched_participation_function: [], +};