@awsless/awsless 0.0.311 → 0.0.312

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.
package/dist/bin.d.ts ADDED
@@ -0,0 +1 @@
1
+ #!/usr/bin/env node
@@ -0,0 +1,54 @@
1
+ interface AuthResources {
2
+ }
3
+ declare const Auth: AuthResources;
4
+ declare const getAuthProps: (name: string) => {
5
+ readonly userPoolId: string;
6
+ readonly clientId: string;
7
+ };
8
+
9
+ interface GraphQLSchema {
10
+ }
11
+ interface GraphQLResources {
12
+ }
13
+ declare const GraphQL: GraphQLResources;
14
+ declare const getGraphQLProps: (name: string) => {
15
+ endpoint: string;
16
+ };
17
+
18
+ interface HTTP {
19
+ }
20
+ type Method = 'GET' | 'POST';
21
+ type Path = string;
22
+ type Params = Record<string, string | number>;
23
+ type Query = Record<string, string>;
24
+ type Body = unknown;
25
+ type Route = {
26
+ param?: Params;
27
+ query?: Query;
28
+ body?: Body;
29
+ response: unknown;
30
+ };
31
+ type Routes = Record<Path, Route>;
32
+ type Schema = Partial<Record<Method, Routes>>;
33
+ type GetRoute<S extends Schema, M extends keyof S, P extends keyof S[M]> = S[M] extends Routes ? S[M][P] : never;
34
+ type Props<R extends Route> = {
35
+ headers?: Record<string, string>;
36
+ params?: R['param'] extends Params ? R['param'] : never;
37
+ query?: R['query'] extends Query ? R['query'] : never;
38
+ body?: R['body'] extends Body ? R['body'] : never;
39
+ };
40
+ type HttpFetcher = (props: {
41
+ method: Method;
42
+ path: Path;
43
+ headers: Headers;
44
+ query?: Query;
45
+ body?: Body;
46
+ }) => unknown;
47
+ declare const createHttpFetcher: (host: string) => HttpFetcher;
48
+ declare const createHttpClient: <S extends Partial<Record<Method, Routes>>>(fetcher: HttpFetcher) => {
49
+ fetch: <M extends keyof S, P extends keyof S[M]>(method: M, routeKey: Extract<P, string>, props?: Props<GetRoute<S, M, P>> | undefined) => Promise<GetRoute<S, M, P>["response"]>;
50
+ get<P_1 extends keyof S["GET"]>(routeKey: Extract<P_1, string>, props?: Props<GetRoute<S, "GET", P_1>> | undefined): Promise<GetRoute<S, "GET", P_1>["response"]>;
51
+ post<P_2 extends keyof S["POST"]>(routeKey: Extract<P_2, string>, props?: Props<GetRoute<S, "POST", P_2>> | undefined): Promise<GetRoute<S, "POST", P_2>["response"]>;
52
+ };
53
+
54
+ export { Auth, AuthResources, GraphQL, GraphQLResources, GraphQLSchema, HTTP, HttpFetcher, createHttpClient, createHttpFetcher, getAuthProps, getGraphQLProps };
@@ -0,0 +1,119 @@
1
+ import { AwsCredentialIdentityProvider } from '@aws-sdk/types';
2
+ import { Mock } from 'vitest';
3
+ import { QoS } from '@awsless/iot';
4
+ export { QoS } from '@awsless/iot';
5
+
6
+ declare const regions: readonly ["us-east-2", "us-east-1", "us-west-1", "us-west-2", "af-south-1", "ap-east-1", "ap-south-2", "ap-southeast-3", "ap-southeast-4", "ap-south-1", "ap-northeast-3", "ap-northeast-2", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ca-central-1", "eu-central-1", "eu-west-1", "eu-west-2", "eu-south-1", "eu-west-3", "eu-south-2", "eu-north-1", "eu-central-2", "me-south-1", "me-central-1", "sa-east-1"];
7
+ type Region = (typeof regions)[number];
8
+
9
+ type Credentials = AwsCredentialIdentityProvider;
10
+
11
+ type CommandContext = {
12
+ region: Region;
13
+ credentials: Credentials;
14
+ accountId: string;
15
+ update: (msg: string) => void;
16
+ };
17
+ type CommandHandler = (options: CommandOptions, context: CommandContext) => Promise<string | undefined | void>;
18
+ declare class CommandOptions {
19
+ private opts;
20
+ constructor(args: string[]);
21
+ get(name: string): any;
22
+ private getAssertType;
23
+ number(name: string): number;
24
+ string(name: string): string;
25
+ boolean(name: string): boolean;
26
+ }
27
+
28
+ interface FunctionMock {
29
+ }
30
+ interface FunctionMockResponse {
31
+ }
32
+ declare const mockFunction: (cb: (mock: FunctionMock) => void) => FunctionMockResponse;
33
+
34
+ declare const mockPubSub: () => Mock;
35
+
36
+ interface QueueMock {
37
+ }
38
+ interface QueueMockResponse {
39
+ }
40
+ declare const mockQueue: (cb: (mock: QueueMock) => void) => QueueMockResponse;
41
+
42
+ interface TaskMock {
43
+ }
44
+ interface TaskMockResponse {
45
+ }
46
+ declare const mockTask: (cb: (mock: TaskMock) => void) => TaskMockResponse;
47
+
48
+ interface TopicMock {
49
+ }
50
+ interface TopicMockResponse {
51
+ }
52
+ declare const mockTopic: (cb: (mock: TopicMock) => void) => TopicMockResponse;
53
+
54
+ declare const getCacheProps: (name: string, stack?: string) => {
55
+ readonly host: string;
56
+ readonly port: number;
57
+ };
58
+ interface CacheResources {
59
+ }
60
+ declare const Cache: CacheResources;
61
+
62
+ declare const getConfigName: (name: string) => string;
63
+ interface ConfigResources {
64
+ }
65
+ declare const Config: ConfigResources;
66
+
67
+ declare const getFunctionName: <N extends string, S extends string = "stack">(name: N, stack?: S) => `app--${S}--function--${N}`;
68
+ interface FunctionResources {
69
+ }
70
+ declare const Function: FunctionResources;
71
+ declare const Fn: FunctionResources;
72
+
73
+ declare const getPubSubTopic: <N extends string>(name: N) => `app/pubsub/${N}`;
74
+
75
+ type PublishOptions = {
76
+ qos?: QoS;
77
+ };
78
+ declare const PubSub: {
79
+ publish(topic: string, event: string, payload: unknown, opts?: PublishOptions): Promise<void>;
80
+ };
81
+
82
+ declare const getQueueName: <N extends string, S extends string = "stack">(name: N, stack?: S) => `app--${S}--queue--${N}`;
83
+ declare const getQueueUrl: (name: string, stack?: string) => string | undefined;
84
+ interface QueueResources {
85
+ }
86
+ declare const Queue: QueueResources;
87
+
88
+ declare const getSearchName: <N extends string, S extends string = "stack">(name: N, stack?: S) => `app--${S}--search--${N}`;
89
+ declare const getSearchProps: (name: string, stack?: string) => {
90
+ readonly domain: string | undefined;
91
+ };
92
+ interface SearchResources {
93
+ }
94
+ declare const Search: SearchResources;
95
+
96
+ declare const getStoreName: <N extends string, S extends string = "stack">(name: N, stack?: S) => `app--${S}--store--${N}`;
97
+ interface StoreResources {
98
+ }
99
+ declare const Store: StoreResources;
100
+
101
+ declare const getTableName: <N extends string, S extends string = "stack">(name: N, stack?: S) => `app--${S}--table--${N}`;
102
+ interface TableResources {
103
+ }
104
+ declare const Table: TableResources;
105
+
106
+ declare const getTaskName: <N extends string, S extends string = "stack">(name: N, stack?: S) => `app--${S}--task--${N}`;
107
+ interface TaskResources {
108
+ }
109
+ declare const Task: TaskResources;
110
+
111
+ declare const getTopicName: <N extends string>(name: N) => `app--topic--${N}`;
112
+ interface TopicResources {
113
+ }
114
+ declare const Topic: TopicResources;
115
+
116
+ declare const APP: "app";
117
+ declare const STACK: "stack";
118
+
119
+ export { APP, Cache, CacheResources, CommandContext, CommandHandler, CommandOptions, Config, ConfigResources, Fn, Function, FunctionMock, FunctionMockResponse, FunctionResources, PubSub, PublishOptions, Queue, QueueMock, QueueMockResponse, QueueResources, STACK, Search, SearchResources, Store, StoreResources, Table, TableResources, Task, TaskMock, TaskMockResponse, TaskResources, Topic, TopicMock, TopicMockResponse, TopicResources, getCacheProps, getConfigName, getFunctionName, getPubSubTopic, getQueueName, getQueueUrl, getSearchName, getSearchProps, getStoreName, getTableName, getTaskName, getTopicName, mockFunction, mockPubSub, mockQueue, mockTask, mockTopic };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@awsless/awsless",
3
- "version": "0.0.311",
3
+ "version": "0.0.312",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "sideEffects": false,
@@ -28,16 +28,16 @@
28
28
  }
29
29
  },
30
30
  "peerDependencies": {
31
- "@awsless/s3": "^0.0.17",
32
31
  "@awsless/lambda": "^0.0.25",
33
32
  "@awsless/open-search": "^0.0.15",
33
+ "@awsless/s3": "^0.0.17",
34
+ "@awsless/redis": "^0.0.12",
34
35
  "@awsless/sns": "^0.0.7",
35
36
  "@awsless/validate": "^0.0.14",
36
- "@awsless/ssm": "^0.0.7",
37
- "@awsless/sqs": "^0.0.7",
37
+ "@awsless/iot": "^0.0.2",
38
38
  "@awsless/weak-cache": "^0.0.1",
39
- "@awsless/redis": "^0.0.12",
40
- "@awsless/iot": "^0.0.2"
39
+ "@awsless/ssm": "^0.0.7",
40
+ "@awsless/sqs": "^0.0.7"
41
41
  },
42
42
  "dependencies": {
43
43
  "@arcanyx/cidr-slicer": "^0.3.0",
@@ -109,10 +109,10 @@
109
109
  "@awsless/duration": "^0.0.1",
110
110
  "@awsless/formation": "^0.0.42",
111
111
  "@awsless/size": "^0.0.1",
112
- "@awsless/ts-file-cache": "^0.0.1",
113
- "@awsless/code": "^0.0.10",
114
112
  "@awsless/graphql": "^0.0.9",
115
- "@awsless/validate": "^0.0.14"
113
+ "@awsless/validate": "^0.0.14",
114
+ "@awsless/ts-file-cache": "^0.0.1",
115
+ "@awsless/code": "^0.0.10"
116
116
  },
117
117
  "scripts": {
118
118
  "test": "pnpm code test",