7.6.3 • Published 6 months ago

@rocket.chat/rest-typings v7.6.3

Weekly downloads
-
License
-
Repository
-
Last release
6 months ago

@rocket.chat/rest-typings

Package containing all Rocket.Chat rest endpoint definitions

Contributing

Contributions are always welcome! However we have some recommendations.

  • Check if your implementation matches your definitions, a bad definition is worse than none.
  • Use the generic types we created for paging.
  • Create functions that assert properties (very useful for the backend)
  • Do tests to ensure that your assertions are correct.
  • Avoid incomplete and unknow typings

Good examples of what not to do:

If you have an endpoint that accepts name or id, both are not optional, one of them is required

    
    type EndPointTestGetParams = { name?: string; id?: string; } // WRONG!

    type EndPointTestGetParams = { name: string; } | { id: string; } // Better :)

If you have an endpoint that accepts name or id, both are not optional, one of them is required

    export const isEndPointTestGetParams = (props: any) is EndPointTestGetParams => 'name' in prop || 'id' in prop; // WRONG!

    // .... Better
    
    
    import Ajv from 'ajv';

    const ajv = new Ajv();
    const endPointTestGetParams = {
        oneOf: [
            {
                type: 'object',
                properties: {
                    name: {
                        type: 'string',
                    },
                },
                required: ['name'],
                additionalProperties: false,
            },
            {
                type: 'object',
                properties: {
                    id: {
                        type: 'string',
                    },
                },
                required: ['id'],
                additionalProperties: false,
            },
        ],
    };

    export const isEndPointTestGetParams = ajv.compile<EndPointTestGetParams>(endPointTestGetParams);

Optimizations

we use interfaces to register endpoints, so if you use a custom version, or miss an endpoint, you don't necessarily need to recompile the code, you can do it in your own code

    declare module '@rocket.chat/rest-typings' {
        interface Endpoints {
            'custom/endpoint': {
                GET: (params: PaginatedRequest<{ query: string }>) => PaginatedResult<{
                    some: string[];
                }>;
            };
        }
    }

License

MIT

7.7.0-rc.1

7 months ago

7.7.0-rc.0

7 months ago

7.3.1

10 months ago

7.3.0

11 months ago

7.4.3

6 months ago

7.4.2

8 months ago

7.4.1

9 months ago

7.7.0-rc.6

7 months ago

7.7.0-rc.3

7 months ago

7.7.0-rc.2

7 months ago

7.4.0-rc.0

10 months ago

7.4.0-rc.1

10 months ago

7.4.0-rc.2

10 months ago

7.4.0-rc.3

10 months ago

7.4.0-rc.4

10 months ago

7.4.0-rc.5

9 months ago

7.4.0

9 months ago

7.5.2

6 months ago

7.5.1

8 months ago

7.5.0

8 months ago

7.6.2

7 months ago

7.6.1

7 months ago

7.6.0

7 months ago

7.6.3

6 months ago

6.10.10

11 months ago

7.5.0-rc.5

9 months ago

7.5.0-rc.4

9 months ago

7.5.0-rc.3

9 months ago

7.5.0-rc.2

9 months ago

7.5.0-rc.1

9 months ago

7.5.0-rc.0

9 months ago

7.1.0-rc.0

1 year ago

7.1.0-rc.1

1 year ago

7.1.0-rc.2

1 year ago

7.1.0-rc.3

1 year ago

7.7.0

7 months ago

7.0.8

10 months ago

7.0.7

10 months ago

7.0.6

10 months ago

7.0.5

11 months ago

6.13.1

1 year ago

7.0.9

10 months ago

7.3.0-rc.0

11 months ago

7.3.0-rc.1

11 months ago

7.3.0-rc.4

11 months ago

7.3.0-rc.5

11 months ago

7.3.0-rc.2

11 months ago

7.3.0-rc.3

11 months ago

6.3.13

1 year ago

7.0.4

11 months ago

7.0.3

12 months ago

7.0.2

1 year ago

7.0.1

1 year ago

7.1.6

6 months ago

7.1.5

10 months ago

7.1.4

10 months ago

6.12.3

1 year ago

7.1.3

10 months ago

7.1.2

10 months ago

7.1.1

11 months ago

7.1.0

1 year ago

7.2.6

6 months ago

7.7.1-rc.4

7 months ago

7.2.5

10 months ago

7.7.1-rc.5

7 months ago

7.2.4

10 months ago

7.2.3

10 months ago

7.6.0-rc.7

7 months ago

7.6.0-rc.8

7 months ago

7.6.0-rc.5

7 months ago

7.6.0-rc.6

7 months ago

7.6.0-rc.3

8 months ago

7.6.0-rc.4

8 months ago

7.6.0-rc.1

8 months ago

7.6.0-rc.2

8 months ago

7.2.0-rc.0

12 months ago

7.2.0-rc.3

11 months ago

7.2.0-rc.2

11 months ago

7.2.0-rc.1

12 months ago

7.6.0-rc.0

8 months ago

6.10.9

12 months ago

6.10.8

1 year ago

6.10.7

1 year ago

7.2.2

10 months ago

7.2.1

11 months ago

7.2.0

11 months ago

7.3.5

6 months ago

7.3.4

9 months ago

7.3.3

10 months ago

7.3.2

10 months ago

6.4.10

1 year ago

6.5.9

1 year ago

7.0.0-rc.6

1 year ago

7.0.0-rc.5

1 year ago

7.0.0

1 year ago

7.0.0-rc.4

1 year ago

7.0.0-rc.3

1 year ago

7.0.0-rc.2

1 year ago

7.0.0-rc.1

1 year ago

7.0.0-rc.0

1 year ago

6.13.0

1 year ago

6.13.0-rc.2

1 year ago

6.13.0-rc.3

1 year ago

6.12.2

1 year ago

6.13.0-rc.4

1 year ago

6.13.0-rc.5

1 year ago

6.13.0-rc.6

1 year ago

6.13.0-rc.1

1 year ago

6.13.0-rc.0

1 year ago

6.12.1

1 year ago

6.11.3

1 year ago

6.10.6

1 year ago

6.9.7

1 year ago

6.12.0

1 year ago

6.12.0-rc.6

1 year ago

6.10.5

1 year ago

6.9.6

1 year ago

6.12.0-rc.5

1 year ago

6.12.0-rc.4

1 year ago

6.11.2

1 year ago

6.12.0-rc.3

1 year ago

6.12.0-rc.2

1 year ago

6.9.0-rc.1

2 years ago

6.9.0-rc.2

2 years ago

6.12.0-rc.0

1 year ago

6.11.0-rc.0

1 year ago

6.10.0-rc.0

1 year ago

6.11.0-rc.1

1 year ago

6.12.0-rc.1

1 year ago

6.10.0-rc.7

1 year ago

6.11.0-rc.6

1 year ago

6.10.0-rc.6

1 year ago

6.10.0-rc.5

1 year ago

6.11.0-rc.4

1 year ago

6.10.0-rc.4

1 year ago

6.11.0-rc.5

1 year ago

6.10.0-rc.3

1 year ago

6.11.0-rc.2

1 year ago

6.10.0-rc.2

1 year ago

6.11.0-rc.3

1 year ago

6.10.0-rc.1

1 year ago

6.11.1

1 year ago

6.11.0

1 year ago

6.10.2

1 year ago

6.10.1

1 year ago

6.10.0

1 year ago

6.10.4

1 year ago

6.10.3

1 year ago

6.9.0

2 years ago

6.9.2

1 year ago

6.9.1

2 years ago

6.9.4

1 year ago

6.5.8

1 year ago

6.9.3

1 year ago

6.9.5

1 year ago

6.5.7

2 years ago

6.5.6

2 years ago

6.5.5

2 years ago

6.5.4

2 years ago

6.6.0-rc.7

2 years ago

6.6.0-rc.6

2 years ago

6.6.0-rc.5

2 years ago

6.6.0-rc.2

2 years ago

6.6.0-rc.3

2 years ago

6.6.0-rc.4

2 years ago

6.6.0-rc.0

2 years ago

6.6.0-rc.1

2 years ago

6.5.3

2 years ago

6.4.9

2 years ago

6.5.2

2 years ago

6.6.0

2 years ago

6.5.1

2 years ago

6.5.0

2 years ago

6.5.0-rc.19

2 years ago

6.5.0-rc.18

2 years ago

6.5.0-rc.17

2 years ago

6.5.0-rc.16

2 years ago

6.5.0-rc.15

2 years ago

6.5.0-rc.14

2 years ago

6.5.0-rc.13

2 years ago

6.5.0-rc.12

2 years ago

6.5.0-rc.11

2 years ago

6.5.0-rc.10

2 years ago

6.5.0-rc.9

2 years ago

6.5.0-rc.8

2 years ago

6.4.8

2 years ago

6.5.0-rc.7

2 years ago

6.4.7

2 years ago

6.3.12

2 years ago

6.4.6

2 years ago

6.3.11

2 years ago

6.5.0-rc.6

2 years ago

6.5.0-rc.5

2 years ago

6.5.0-rc.4

2 years ago

6.5.0-rc.3

2 years ago

6.5.0-rc.2

2 years ago

6.5.0-rc.1

2 years ago

6.5.0-rc.0

2 years ago

6.4.5

2 years ago

6.4.4

2 years ago

6.4.3

2 years ago

6.4.2

2 years ago

6.4.1

2 years ago

6.3.10

2 years ago

6.3.9

2 years ago

6.4.0

2 years ago

6.4.0-rc.5

2 years ago

6.3.8

2 years ago

6.4.0-rc.4

2 years ago

6.4.0-rc.3

2 years ago

6.3.7

2 years ago

6.4.0-rc.2

2 years ago

6.4.0-rc.1

2 years ago

6.3.6

2 years ago

6.4.0-rc.0

2 years ago

6.3.5

2 years ago

6.3.4

2 years ago

6.3.3

2 years ago

6.3.2

2 years ago

6.3.1

2 years ago

6.3.0

2 years ago

6.3.0-rc.10

2 years ago

6.3.0-rc.9

2 years ago

6.3.0-rc.8

2 years ago

6.3.0-rc.7

2 years ago

6.3.0-rc.6

2 years ago

6.3.0-rc.5

2 years ago

6.3.0-rc.4

2 years ago

6.3.0-rc.3

2 years ago

6.3.0-rc.2

2 years ago

6.3.0-rc.1

2 years ago

6.3.0-rc.0

2 years ago