@solana/codecs-data-structures 2.0.0 → 2.0.1-canary-20241112044734

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.
@@ -8,6 +8,7 @@ export * from './discriminated-union';
8
8
  export * from './enum';
9
9
  export * from './hidden-prefix';
10
10
  export * from './hidden-suffix';
11
+ export * from './literal-union';
11
12
  export * from './map';
12
13
  export * from './nullable';
13
14
  export * from './set';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,uBAAuB,CAAC;AACtC,cAAc,QAAQ,CAAC;AACvB,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,OAAO,CAAC;AACtB,cAAc,YAAY,CAAC;AAC3B,cAAc,OAAO,CAAC;AACtB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,uBAAuB,CAAC;AACtC,cAAc,QAAQ,CAAC;AACvB,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,OAAO,CAAC;AACtB,cAAc,YAAY,CAAC;AAC3B,cAAc,OAAO,CAAC;AACtB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC"}
@@ -0,0 +1,47 @@
1
+ import { FixedSizeCodec, FixedSizeDecoder, FixedSizeEncoder, VariableSizeCodec, VariableSizeDecoder, VariableSizeEncoder } from '@solana/codecs-core';
2
+ import { FixedSizeNumberCodec, FixedSizeNumberDecoder, FixedSizeNumberEncoder, NumberCodec, NumberDecoder, NumberEncoder } from '@solana/codecs-numbers';
3
+ /** Defines the config for literal union codecs. */
4
+ export type LiteralUnionCodecConfig<TDiscriminator = NumberCodec | NumberDecoder | NumberEncoder> = {
5
+ /**
6
+ * The number codec to use for the literal union discriminator.
7
+ * @defaultValue u8 discriminator.
8
+ */
9
+ size?: TDiscriminator;
10
+ };
11
+ type Variant = bigint | boolean | number | string | null | undefined;
12
+ type GetTypeFromVariants<TVariants extends readonly Variant[]> = TVariants[number];
13
+ /**
14
+ * Creates a literal union encoder.
15
+ *
16
+ * @param variants - The variant encoders of the literal union.
17
+ * @param config - A set of config for the encoder.
18
+ */
19
+ export declare function getLiteralUnionEncoder<const TVariants extends readonly Variant[]>(variants: TVariants): FixedSizeEncoder<GetTypeFromVariants<TVariants>, 1>;
20
+ export declare function getLiteralUnionEncoder<const TVariants extends readonly Variant[], TSize extends number>(variants: TVariants, config: LiteralUnionCodecConfig<NumberEncoder> & {
21
+ size: FixedSizeNumberEncoder<TSize>;
22
+ }): FixedSizeEncoder<GetTypeFromVariants<TVariants>, TSize>;
23
+ export declare function getLiteralUnionEncoder<const TVariants extends readonly Variant[]>(variants: TVariants, config?: LiteralUnionCodecConfig<NumberEncoder>): VariableSizeEncoder<GetTypeFromVariants<TVariants>>;
24
+ /**
25
+ * Creates a literal union decoder.
26
+ *
27
+ * @param variants - The variant decoders of the literal union.
28
+ * @param config - A set of config for the decoder.
29
+ */
30
+ export declare function getLiteralUnionDecoder<const TVariants extends readonly Variant[]>(variants: TVariants): FixedSizeDecoder<GetTypeFromVariants<TVariants>, 1>;
31
+ export declare function getLiteralUnionDecoder<const TVariants extends readonly Variant[], TSize extends number>(variants: TVariants, config: LiteralUnionCodecConfig<NumberDecoder> & {
32
+ size: FixedSizeNumberDecoder<TSize>;
33
+ }): FixedSizeDecoder<GetTypeFromVariants<TVariants>, TSize>;
34
+ export declare function getLiteralUnionDecoder<const TVariants extends readonly Variant[]>(variants: TVariants, config?: LiteralUnionCodecConfig<NumberDecoder>): VariableSizeDecoder<GetTypeFromVariants<TVariants>>;
35
+ /**
36
+ * Creates a literal union codec.
37
+ *
38
+ * @param variants - The variant codecs of the literal union.
39
+ * @param config - A set of config for the codec.
40
+ */
41
+ export declare function getLiteralUnionCodec<const TVariants extends readonly Variant[]>(variants: TVariants): FixedSizeCodec<GetTypeFromVariants<TVariants>, GetTypeFromVariants<TVariants>, 1>;
42
+ export declare function getLiteralUnionCodec<const TVariants extends readonly Variant[], TSize extends number>(variants: TVariants, config: LiteralUnionCodecConfig<NumberCodec> & {
43
+ size: FixedSizeNumberCodec<TSize>;
44
+ }): FixedSizeCodec<GetTypeFromVariants<TVariants>, GetTypeFromVariants<TVariants>, TSize>;
45
+ export declare function getLiteralUnionCodec<const TVariants extends readonly Variant[]>(variants: TVariants, config?: LiteralUnionCodecConfig<NumberCodec>): VariableSizeCodec<GetTypeFromVariants<TVariants>>;
46
+ export {};
47
+ //# sourceMappingURL=literal-union.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"literal-union.d.ts","sourceRoot":"","sources":["../../src/literal-union.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@solana/codecs-data-structures",
3
- "version": "2.0.0",
3
+ "version": "2.0.1-canary-20241112044734",
4
4
  "description": "Codecs for various data structures",
5
5
  "exports": {
6
6
  "edge-light": {
@@ -53,13 +53,10 @@
53
53
  "supports bigint and not dead",
54
54
  "maintained node versions"
55
55
  ],
56
- "engine": {
57
- "node": ">=17.4"
58
- },
59
56
  "dependencies": {
60
- "@solana/codecs-core": "2.0.0",
61
- "@solana/codecs-numbers": "2.0.0",
62
- "@solana/errors": "2.0.0"
57
+ "@solana/codecs-core": "2.0.1-canary-20241112044734",
58
+ "@solana/errors": "2.0.1-canary-20241112044734",
59
+ "@solana/codecs-numbers": "2.0.1-canary-20241112044734"
63
60
  },
64
61
  "peerDependencies": {
65
62
  "typescript": ">=5"