[contentstack] Add ContentStack type definitions for 3.8.1 (#41888)

* Add initial ContentStack definitions for 3.8(.1)

* Add additional configuration constructor
This commit is contained in:
Dominic Wroblewski 2020-01-27 18:58:45 +00:00 committed by Wesley Wigham
parent e21cf45ff1
commit f8e37b2dfb
4 changed files with 276 additions and 0 deletions

View File

@ -0,0 +1,169 @@
import contentstack = require('contentstack');
contentstack.Stack({ api_key: '', access_token: '', environment: ''});
const stack = contentstack.Stack('api_key', 'access_token', 'environment_name');
stack.ContentType('content_type');
const query = stack.ContentType('content_type').Query();
stack
.ContentType('content_type')
.Query()
.find();
stack
.ContentType('content_type')
.Query()
.setCacheProvider({})
.find();
stack
.ContentType('content_type')
.Query()
.setCachePolicy(1)
.find();
stack
.ContentType('content_type')
.Query()
.language('en-US')
.find();
stack
.ContentType('content_type')
.Query()
.addQuery('query', 'foo')
.find();
stack
.ContentType('content_type')
.Query()
.includeReference('query')
.find();
stack
.ContentType('content_type')
.Query()
.includeReference('query', 'foo')
.find();
stack
.ContentType('content_type')
.Query()
.includeReference(['query'])
.find();
stack
.ContentType('content_type')
.Query()
.includeReference(['query', 'foo'])
.find();
stack
.ContentType('content_type')
.Query()
.includeReferenceContentTypeUID()
.find();
stack
.ContentType('content_type')
.Query()
.includeSchema()
.find();
stack
.ContentType('content_type')
.Query()
.includeContentType()
.find();
stack
.ContentType('content_type')
.Query()
.includeOwner()
.find();
stack
.ContentType('content_type')
.Query()
.toJSON()
.find();
stack
.ContentType('content_type')
.Query()
.addParam('key', 'value')
.find();
stack
.ContentType('content_type')
.Query()
.fetch();
stack
.ContentType('content_type')
.Query()
.equalTo('key', 'value')
.find();
stack
.ContentType('content_type')
.Query()
.where('key', 'value')
.find();
stack
.ContentType('content_type')
.Query()
.count()
.find();
stack
.ContentType('content_type')
.Query()
.referenceIn('key', query)
.find();
stack
.ContentType('content_type')
.Query()
.referenceNotIn('key', query)
.find();
stack
.ContentType('content_type')
.Query()
.tags(['some', 'tag'])
.find();
stack
.ContentType('content_type')
.Query()
.includeCount()
.find();
stack
.ContentType('content_type')
.Query()
.getQuery()
.find();
stack
.ContentType('content_type')
.Query()
.regex('key', 'value', 'options')
.find();
stack
.ContentType('content_type')
.Query()
.search('search_value')
.find();
stack
.ContentType('content_type')
.Query()
.findOne();
stack
.ContentType('content_type')
.Query()
.greaterThan('key', 'value')
.find();
stack
.ContentType('content_type')
.Query()
.greaterThanOrEqualTo('key', 'value')
.find();
stack
.ContentType('content_type')
.Query()
.lessThan('key', 'value')
.find();
stack
.ContentType('content_type')
.Query()
.lessThanOrEqualTo('key', 'value')
.find();
stack
.ContentType('content_type')
.Query()
.notEqualTo('key', 'value')
.find();
stack
.ContentType('content_type')
.Query()
.containedIn('key', 'value')
.find();

83
types/contentstack/index.d.ts vendored Normal file
View File

@ -0,0 +1,83 @@
// Type definitions for contentstack 3.8
// Project: https://github.com/contentstack/contentstack-javascript
// Definitions by: Dominic Wroblewski <https://github.com/domness>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
// TypeScript Version: 3.6
export function Stack(api_key: string, access_token: string, environment_name: string): Stack;
export function Stack(config: Config): Stack;
export interface Config {
api_key: string;
access_token: string;
environment: string;
}
export class Stack {
constructor(config: Config);
constructor(api_key: string, access_token: string, environment_name: string);
ContentType(uid: string): ContentType;
}
export class ContentType {
constructor();
Query(): Query;
}
export class Entry {
constructor();
setCacheProvider(provider: object): Entry;
setCachePolicy(policy: number): Entry;
includeReference(val: string[]): Entry;
includeReference(...val: string[]): Entry;
language(language_code: string): Entry;
addQuery(key: string, value: string): Entry;
includeSchema(): Entry;
includeReferenceContentTypeUID(): Entry;
includeContentType(): Entry;
includeOwner(): Entry;
toJSON(): Entry;
addParam(key: string, value: any): Entry;
fetch(): Promise<any>;
}
export class Query extends Entry {
constructor();
setCacheProvider(provider: object): Query;
setCachePolicy(policy: number): Query;
language(language_code: string): Query;
addQuery(key: string, value: string): Query;
includeReference(val: string[]): Query;
includeReference(...val: string[]): Query;
includeReferenceContentTypeUID(): Query;
includeSchema(): Query;
includeContentType(): Query;
includeOwner(): Query;
toJSON(): Query;
addParam(key: string, value: any): Query;
fetch(): Promise<any>;
equalTo(key: string, value: any): Query;
where(key: string, value: any): Query;
count(): Query;
query(query: any): Query;
referenceIn(key: string, query: Query): Query;
referenceNotIn(key: string, query: Query): Query;
tags(value: any[]): Query;
includeCount(): Query;
getQuery(): Query;
regex(key: string, value: any, options: string): Query;
search(value: string): Query;
find(): Promise<any>;
findOne(): Promise<any>;
greaterThan(key: string, value: any): Query;
greaterThanOrEqualTo(key: string, value: any): Query;
lessThan(key: string, value: any): Query;
lessThanOrEqualTo(key: string, value: any): Query;
notEqualTo(key: string, value: any): Query;
containedIn(key: string, value: any): Query;
}

View File

@ -0,0 +1,23 @@
{
"compilerOptions": {
"module": "commonjs",
"lib": [
"es6"
],
"noImplicitAny": true,
"noImplicitThis": true,
"strictFunctionTypes": true,
"strictNullChecks": true,
"baseUrl": "../",
"typeRoots": [
"../"
],
"types": [],
"noEmit": true,
"forceConsistentCasingInFileNames": true
},
"files": [
"index.d.ts",
"contentstack-tests.ts"
]
}

View File

@ -0,0 +1 @@
{ "extends": "dtslint/dt.json" }