@uniswap/client-liquidity 1.4.20 → 1.4.22

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -480,13 +480,12 @@ export declare class CreateAuctionRequest extends Message<CreateAuctionRequest>
480
480
  */
481
481
  simulateTransaction?: boolean;
482
482
  /**
483
- * Explicit creator-fee toggle for the post-graduation LP position. During
484
- * rollout an absent field is treated as false identical to today's
485
- * behavior, so a client that predates the field keeps launching exactly as
486
- * it does now (a silent flip could only occur if absent meant true). The
487
- * field is intended to become required once apps/web and the crowd-launch
488
- * client send it explicitly; it is declared optional so presence stays
489
- * detectable on the wire for that flip.
483
+ * Explicit creator-fee toggle for the post-graduation LP position. An
484
+ * absent field keeps fully legacy routing (pool owner or the configured
485
+ * liquidity_lock recipient), so a client that predates the field keeps
486
+ * launching exactly as it does now. The field is intended to become
487
+ * required once every client sends it explicitly; it is declared optional
488
+ * so presence stays detectable on the wire for that flip.
490
489
  *
491
490
  * Unlike CreateDirectLaunch there is NO beneficiary parameter: attribution is
492
491
  * the beneficiary vault's graffiti claim. The wallet that sends createToken is
@@ -501,8 +500,14 @@ export declare class CreateAuctionRequest extends Message<CreateAuctionRequest>
501
500
  * liquidity_lock (the FeeSplitter replaces the lock; setting both is
502
501
  * rejected). This is distinct from LiquidityLockConfig.fees_forwarder, which
503
502
  * deploys a per-launch forwarder with a fixed fee_recipient and no vault
504
- * attribution. When false, behavior is unchanged: the position goes to the
505
- * pool owner or the configured liquidity_lock recipient.
503
+ * attribution.
504
+ *
505
+ * When false, position routing is unchanged: the position goes to the pool
506
+ * owner or the configured liquidity_lock recipient. This field answers only
507
+ * "does the creator claim fees" — to park a fees-off position with the
508
+ * shared fees-OFF FeeSplitter (100% of LP fees autocompound to the
509
+ * protocol), name that recipient explicitly with liquidity_lock mode
510
+ * `autocompound` instead of relying on this toggle.
506
511
  *
507
512
  * @generated from field: optional bool creator_fees_enabled = 8;
508
513
  */
@@ -761,8 +766,9 @@ export declare class PoolConfig extends Message<PoolConfig> {
761
766
  }
762
767
  /**
763
768
  * Locks the migrated LP positions in a per-launch position-recipient contract (or burns
764
- * them outright — see BurnLock). The `mode` oneof selects the recipient type; each variant
765
- * carries only the fields that apply to it, so a parameter can never be set for the wrong mode.
769
+ * them outright — see BurnLock or parks them with the shared fees-OFF FeeSplitter — see
770
+ * AutocompoundLock). The `mode` oneof selects the recipient type; each variant carries
771
+ * only the fields that apply to it, so a parameter can never be set for the wrong mode.
766
772
  *
767
773
  * @generated from message uniswap.liquidity.v1.LiquidityLockConfig
768
774
  */
@@ -770,7 +776,8 @@ export declare class LiquidityLockConfig extends Message<LiquidityLockConfig> {
770
776
  /**
771
777
  * Absolute unix seconds when the lock expires; the backend converts this to a block number.
772
778
  * Applies to every contract-held mode — all recipients hold the LP until this block.
773
- * Must be UNSET (0) for BURN: a burned position can never be unlocked.
779
+ * Must be UNSET (0) for BURN and AUTOCOMPOUND: a burned position can never be
780
+ * unlocked, and the shared FeeSplitter holds an autocompounding position forever.
774
781
  *
775
782
  * @generated from field: uint64 unlock_time_unix = 1;
776
783
  */
@@ -802,6 +809,12 @@ export declare class LiquidityLockConfig extends Message<LiquidityLockConfig> {
802
809
  */
803
810
  value: BurnLock;
804
811
  case: "burn";
812
+ } | {
813
+ /**
814
+ * @generated from field: uniswap.liquidity.v1.AutocompoundLock autocompound = 6;
815
+ */
816
+ value: AutocompoundLock;
817
+ case: "autocompound";
805
818
  } | {
806
819
  case: undefined;
807
820
  value?: undefined;
@@ -891,6 +904,31 @@ export declare class BurnLock extends Message<BurnLock> {
891
904
  static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): BurnLock;
892
905
  static equals(a: BurnLock | PlainMessage<BurnLock> | undefined, b: BurnLock | PlainMessage<BurnLock> | undefined): boolean;
893
906
  }
907
+ /**
908
+ * Permanently parks the migrated LP position in the chain's shared fees-OFF
909
+ * FeeSplitter — the same custody as fees-off bonding-curve (instant) launches:
910
+ * 100% of the position's LP fees autocompound to the protocol and nothing ever
911
+ * accrues to the creator. Like BURN there is no per-launch recipient contract
912
+ * (no deploy tx) and the position can never be withdrawn, so unlock_time_unix
913
+ * must be UNSET (0). The splitter can only custody a new-token launch with a
914
+ * native-ETH raise on a chain that has a fees-OFF deployment; any other shape
915
+ * is rejected. Only the migrated LP position is affected: the auction
916
+ * tokensRecipient, the failure-recovery recipient, and pool_owner semantics
917
+ * are unchanged (the creator keeps them), so a failed (non-graduated) auction
918
+ * returns funds to the creator.
919
+ *
920
+ * @generated from message uniswap.liquidity.v1.AutocompoundLock
921
+ */
922
+ export declare class AutocompoundLock extends Message<AutocompoundLock> {
923
+ constructor(data?: PartialMessage<AutocompoundLock>);
924
+ static readonly runtime: typeof proto3;
925
+ static readonly typeName = "uniswap.liquidity.v1.AutocompoundLock";
926
+ static readonly fields: FieldList;
927
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): AutocompoundLock;
928
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): AutocompoundLock;
929
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): AutocompoundLock;
930
+ static equals(a: AutocompoundLock | PlainMessage<AutocompoundLock> | undefined, b: AutocompoundLock | PlainMessage<AutocompoundLock> | undefined): boolean;
931
+ }
894
932
  /**
895
933
  * @generated from message uniswap.liquidity.v1.CustomPriceRange
896
934
  */
@@ -1112,6 +1150,22 @@ export declare class CreateDirectLaunchRequest extends Message<CreateDirectLaunc
1112
1150
  * @generated from field: optional bool creator_fees_enabled = 8;
1113
1151
  */
1114
1152
  creatorFeesEnabled?: boolean;
1153
+ /**
1154
+ * Optional launch-time creator buy, in basis points of the fixed total
1155
+ * supply (1–10000), bought atomically in the same launch multicall via the
1156
+ * launcher's UniversalRouterStrategy. Instant (direct) launches only — this
1157
+ * field exists only on CreateDirectLaunchRequest, so auctions can never
1158
+ * carry it. The launch pool's opening state is fully determined before the
1159
+ * transaction exists and the buy is the pool's first-ever swap inside the
1160
+ * same transaction, so the server computes the exact native cost, encodes
1161
+ * the exact-in route (slippage bounds live inside the route), and the
1162
+ * returned transaction carries value == that exact cost — the wallet MUST
1163
+ * send it unchanged. Rejected with INVALID_ARGUMENT where the launch-time
1164
+ * buy is not enabled/supported on the requested chain.
1165
+ *
1166
+ * @generated from field: optional uint32 prelaunch_buy_supply_bps = 9;
1167
+ */
1168
+ prelaunchBuySupplyBps?: number;
1115
1169
  constructor(data?: PartialMessage<CreateDirectLaunchRequest>);
1116
1170
  static readonly runtime: typeof proto3;
1117
1171
  static readonly typeName = "uniswap.liquidity.v1.CreateDirectLaunchRequest";
@@ -1130,8 +1184,11 @@ export declare class CreateDirectLaunchResponse extends Message<CreateDirectLaun
1130
1184
  */
1131
1185
  requestId: string;
1132
1186
  /**
1133
- * Ordered; today always a single LiquidityLauncher.multicall(createToken,
1134
- * distributeToken) with value 0.
1187
+ * Ordered; always a single LiquidityLauncher.multicallcreateToken +
1188
+ * distributeToken, plus a distributeWithNative buy leg when
1189
+ * prelaunch_buy_supply_bps was set. Value is 0 without a buy leg and exactly
1190
+ * the computed buy cost with one (the launcher strands any excess, so the
1191
+ * wallet must not alter it).
1135
1192
  *
1136
1193
  * @generated from field: repeated uniswap.liquidity.v1.TransactionRequest transactions = 2;
1137
1194
  */
@@ -975,8 +975,9 @@ PoolConfig.fields = proto3.util.newFieldList(() => [
975
975
  ]);
976
976
  /**
977
977
  * Locks the migrated LP positions in a per-launch position-recipient contract (or burns
978
- * them outright — see BurnLock). The `mode` oneof selects the recipient type; each variant
979
- * carries only the fields that apply to it, so a parameter can never be set for the wrong mode.
978
+ * them outright — see BurnLock or parks them with the shared fees-OFF FeeSplitter — see
979
+ * AutocompoundLock). The `mode` oneof selects the recipient type; each variant carries
980
+ * only the fields that apply to it, so a parameter can never be set for the wrong mode.
980
981
  *
981
982
  * @generated from message uniswap.liquidity.v1.LiquidityLockConfig
982
983
  */
@@ -986,7 +987,8 @@ export class LiquidityLockConfig extends Message {
986
987
  /**
987
988
  * Absolute unix seconds when the lock expires; the backend converts this to a block number.
988
989
  * Applies to every contract-held mode — all recipients hold the LP until this block.
989
- * Must be UNSET (0) for BURN: a burned position can never be unlocked.
990
+ * Must be UNSET (0) for BURN and AUTOCOMPOUND: a burned position can never be
991
+ * unlocked, and the shared FeeSplitter holds an autocompounding position forever.
990
992
  *
991
993
  * @generated from field: uint64 unlock_time_unix = 1;
992
994
  */
@@ -1018,6 +1020,7 @@ LiquidityLockConfig.fields = proto3.util.newFieldList(() => [
1018
1020
  { no: 3, name: "fees_forwarder", kind: "message", T: FeesForwarderLock, oneof: "mode" },
1019
1021
  { no: 4, name: "buyback_burn", kind: "message", T: BuybackBurnLock, oneof: "mode" },
1020
1022
  { no: 5, name: "burn", kind: "message", T: BurnLock, oneof: "mode" },
1023
+ { no: 6, name: "autocompound", kind: "message", T: AutocompoundLock, oneof: "mode" },
1021
1024
  ]);
1022
1025
  /**
1023
1026
  * Holds the LP until unlock_time_unix, then lets the configured operator withdraw it.
@@ -1143,6 +1146,42 @@ export class BurnLock extends Message {
1143
1146
  BurnLock.runtime = proto3;
1144
1147
  BurnLock.typeName = "uniswap.liquidity.v1.BurnLock";
1145
1148
  BurnLock.fields = proto3.util.newFieldList(() => []);
1149
+ /**
1150
+ * Permanently parks the migrated LP position in the chain's shared fees-OFF
1151
+ * FeeSplitter — the same custody as fees-off bonding-curve (instant) launches:
1152
+ * 100% of the position's LP fees autocompound to the protocol and nothing ever
1153
+ * accrues to the creator. Like BURN there is no per-launch recipient contract
1154
+ * (no deploy tx) and the position can never be withdrawn, so unlock_time_unix
1155
+ * must be UNSET (0). The splitter can only custody a new-token launch with a
1156
+ * native-ETH raise on a chain that has a fees-OFF deployment; any other shape
1157
+ * is rejected. Only the migrated LP position is affected: the auction
1158
+ * tokensRecipient, the failure-recovery recipient, and pool_owner semantics
1159
+ * are unchanged (the creator keeps them), so a failed (non-graduated) auction
1160
+ * returns funds to the creator.
1161
+ *
1162
+ * @generated from message uniswap.liquidity.v1.AutocompoundLock
1163
+ */
1164
+ export class AutocompoundLock extends Message {
1165
+ constructor(data) {
1166
+ super();
1167
+ proto3.util.initPartial(data, this);
1168
+ }
1169
+ static fromBinary(bytes, options) {
1170
+ return new AutocompoundLock().fromBinary(bytes, options);
1171
+ }
1172
+ static fromJson(jsonValue, options) {
1173
+ return new AutocompoundLock().fromJson(jsonValue, options);
1174
+ }
1175
+ static fromJsonString(jsonString, options) {
1176
+ return new AutocompoundLock().fromJsonString(jsonString, options);
1177
+ }
1178
+ static equals(a, b) {
1179
+ return proto3.util.equals(AutocompoundLock, a, b);
1180
+ }
1181
+ }
1182
+ AutocompoundLock.runtime = proto3;
1183
+ AutocompoundLock.typeName = "uniswap.liquidity.v1.AutocompoundLock";
1184
+ AutocompoundLock.fields = proto3.util.newFieldList(() => []);
1146
1185
  /**
1147
1186
  * @generated from message uniswap.liquidity.v1.CustomPriceRange
1148
1187
  */
@@ -1406,6 +1445,7 @@ CreateDirectLaunchRequest.fields = proto3.util.newFieldList(() => [
1406
1445
  { no: 6, name: "fee_beneficiary", kind: "scalar", T: 9 /* ScalarType.STRING */, opt: true },
1407
1446
  { no: 7, name: "simulate_transaction", kind: "scalar", T: 8 /* ScalarType.BOOL */, opt: true },
1408
1447
  { no: 8, name: "creator_fees_enabled", kind: "scalar", T: 8 /* ScalarType.BOOL */, opt: true },
1448
+ { no: 9, name: "prelaunch_buy_supply_bps", kind: "scalar", T: 13 /* ScalarType.UINT32 */, opt: true },
1409
1449
  ]);
1410
1450
  /**
1411
1451
  * @generated from message uniswap.liquidity.v1.CreateDirectLaunchResponse
@@ -1418,8 +1458,11 @@ export class CreateDirectLaunchResponse extends Message {
1418
1458
  */
1419
1459
  this.requestId = "";
1420
1460
  /**
1421
- * Ordered; today always a single LiquidityLauncher.multicall(createToken,
1422
- * distributeToken) with value 0.
1461
+ * Ordered; always a single LiquidityLauncher.multicallcreateToken +
1462
+ * distributeToken, plus a distributeWithNative buy leg when
1463
+ * prelaunch_buy_supply_bps was set. Value is 0 without a buy leg and exactly
1464
+ * the computed buy cost with one (the launcher strands any excess, so the
1465
+ * wallet must not alter it).
1423
1466
  *
1424
1467
  * @generated from field: repeated uniswap.liquidity.v1.TransactionRequest transactions = 2;
1425
1468
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@uniswap/client-liquidity",
3
- "version": "1.4.20",
3
+ "version": "1.4.22",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },