mirror of
https://github.com/gosticks/DefinitelyTyped.git
synced 2025-10-16 12:05:41 +00:00
types for @pollyjs monorepo
* @pollyjs/core
* @pollyjs/utils
* @pollyjs/adapter
* @pollyjs/persister
* @pollyjs/persister-fs
* @pollyjs/adapter-fetch
This commit is contained in:
parent
cff4ff4231
commit
891bb6ce5d
9
types/pollyjs__adapter-fetch/index.d.ts
vendored
Normal file
9
types/pollyjs__adapter-fetch/index.d.ts
vendored
Normal file
@ -0,0 +1,9 @@
|
||||
// Type definitions for @pollyjs/adapter-fetch 1.2
|
||||
// Project: https://github.com/netflix/pollyjs/tree/master/packages/@pollyjs/adapter-fetch
|
||||
// Definitions by: feinoujc <https://github.com/feinoujc>
|
||||
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
|
||||
// TypeScript Version: 2.4
|
||||
|
||||
import Adapter from '@pollyjs/adapter';
|
||||
|
||||
export default class FetchAdapter extends Adapter {}
|
||||
@ -0,0 +1,8 @@
|
||||
import FetchAdapter from '@pollyjs/adapter-fetch';
|
||||
import { Polly } from '@pollyjs/core';
|
||||
|
||||
Polly.register(FetchAdapter);
|
||||
|
||||
new Polly('<recording>', {
|
||||
adapters: ['xhr', FetchAdapter]
|
||||
});
|
||||
40
types/pollyjs__adapter-fetch/tsconfig.json
Normal file
40
types/pollyjs__adapter-fetch/tsconfig.json
Normal file
@ -0,0 +1,40 @@
|
||||
{
|
||||
"compilerOptions": {
|
||||
"module": "commonjs",
|
||||
"lib": [
|
||||
"es6"
|
||||
],
|
||||
"noImplicitAny": true,
|
||||
"noImplicitThis": true,
|
||||
"strictNullChecks": true,
|
||||
"strictFunctionTypes": true,
|
||||
"baseUrl": "../",
|
||||
"typeRoots": [
|
||||
"../"
|
||||
],
|
||||
"types": [],
|
||||
"noEmit": true,
|
||||
"forceConsistentCasingInFileNames": true,
|
||||
"paths": {
|
||||
"@pollyjs/core": [
|
||||
"pollyjs__core"
|
||||
],
|
||||
"@pollyjs/adapter": [
|
||||
"pollyjs__adapter"
|
||||
],
|
||||
"@pollyjs/adapter-fetch": [
|
||||
"pollyjs__adapter-fetch"
|
||||
],
|
||||
"@pollyjs/persister": [
|
||||
"pollyjs__persister"
|
||||
],
|
||||
"@pollyjs/utils": [
|
||||
"pollyjs__utils"
|
||||
]
|
||||
}
|
||||
},
|
||||
"files": [
|
||||
"index.d.ts",
|
||||
"pollyjs__adapter-fetch-tests.ts"
|
||||
]
|
||||
}
|
||||
1
types/pollyjs__adapter-fetch/tslint.json
Normal file
1
types/pollyjs__adapter-fetch/tslint.json
Normal file
@ -0,0 +1 @@
|
||||
{ "extends": "dtslint/dt.json" }
|
||||
10
types/pollyjs__adapter/index.d.ts
vendored
Normal file
10
types/pollyjs__adapter/index.d.ts
vendored
Normal file
@ -0,0 +1,10 @@
|
||||
// Type definitions for @pollyjs/adapter 1.2
|
||||
// Project: https://github.com/netflix/pollyjs/tree/master/packages/@pollyjs/adapter
|
||||
// Definitions by: feinoujc <https://github.com/feinoujc>
|
||||
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
|
||||
export default class Adapter {
|
||||
static readonly name: string;
|
||||
static readonly type: string;
|
||||
connect(): void;
|
||||
disconnect(): void;
|
||||
}
|
||||
4
types/pollyjs__adapter/pollyjs__adapter-tests.ts
Normal file
4
types/pollyjs__adapter/pollyjs__adapter-tests.ts
Normal file
@ -0,0 +1,4 @@
|
||||
import Adapter from '@pollyjs/adapter';
|
||||
|
||||
Adapter.name;
|
||||
Adapter.type;
|
||||
37
types/pollyjs__adapter/tsconfig.json
Normal file
37
types/pollyjs__adapter/tsconfig.json
Normal file
@ -0,0 +1,37 @@
|
||||
{
|
||||
"compilerOptions": {
|
||||
"module": "commonjs",
|
||||
"lib": [
|
||||
"es6"
|
||||
],
|
||||
"noImplicitAny": true,
|
||||
"noImplicitThis": true,
|
||||
"strictNullChecks": true,
|
||||
"strictFunctionTypes": true,
|
||||
"baseUrl": "../",
|
||||
"typeRoots": [
|
||||
"../"
|
||||
],
|
||||
"types": [],
|
||||
"noEmit": true,
|
||||
"forceConsistentCasingInFileNames": true,
|
||||
"paths": {
|
||||
"@pollyjs/core": [
|
||||
"pollyjs__core"
|
||||
],
|
||||
"@pollyjs/adapter": [
|
||||
"pollyjs__adapter"
|
||||
],
|
||||
"@pollyjs/persister": [
|
||||
"pollyjs__persister"
|
||||
],
|
||||
"@pollyjs/utils": [
|
||||
"pollyjs__utils"
|
||||
]
|
||||
}
|
||||
},
|
||||
"files": [
|
||||
"index.d.ts",
|
||||
"pollyjs__adapter-tests.ts"
|
||||
]
|
||||
}
|
||||
1
types/pollyjs__adapter/tslint.json
Normal file
1
types/pollyjs__adapter/tslint.json
Normal file
@ -0,0 +1 @@
|
||||
{ "extends": "dtslint/dt.json" }
|
||||
167
types/pollyjs__core/index.d.ts
vendored
Normal file
167
types/pollyjs__core/index.d.ts
vendored
Normal file
@ -0,0 +1,167 @@
|
||||
// Type definitions for @pollyjs/core 1.2
|
||||
// Project: https://github.com/netflix/pollyjs/tree/master/packages/@pollyjs/core
|
||||
// Definitions by: feinoujc <https://github.com/feinoujc>
|
||||
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
|
||||
// TypeScript Version: 2.4
|
||||
|
||||
import { MODES } from '@pollyjs/utils';
|
||||
import Adapter from '@pollyjs/adapter';
|
||||
import Persister from '@pollyjs/persister';
|
||||
|
||||
export const Timing: {
|
||||
fixed(ms: number): () => Promise<void>;
|
||||
relative(ratio: number): (ms: number) => Promise<void>;
|
||||
};
|
||||
export interface PollyConfig {
|
||||
mode?: MODES;
|
||||
|
||||
adapters?: Array<string | typeof Adapter>;
|
||||
adapterOptions?: any;
|
||||
|
||||
persister?: string | typeof Persister;
|
||||
persisterOptions?: {
|
||||
keepUnusedRequests?: boolean;
|
||||
[key: string]: any;
|
||||
};
|
||||
|
||||
logging?: boolean;
|
||||
|
||||
recordIfMissing?: boolean;
|
||||
recordIfExpired?: boolean;
|
||||
recordFailedRequests?: boolean;
|
||||
|
||||
expiresIn?: string | null;
|
||||
timing?: ((ms: number) => Promise<void>) | (() => Promise<void>);
|
||||
|
||||
matchRequestsBy?: {
|
||||
method?: boolean;
|
||||
headers?: any;
|
||||
body?: boolean;
|
||||
order?: boolean;
|
||||
|
||||
url?: {
|
||||
protocol?: boolean;
|
||||
username?: boolean;
|
||||
password?: boolean;
|
||||
hostname?: boolean;
|
||||
port?: boolean;
|
||||
pathname?: boolean;
|
||||
query?: boolean;
|
||||
hash?: boolean;
|
||||
};
|
||||
};
|
||||
}
|
||||
export interface Request {
|
||||
getHeader(name: string): string | null;
|
||||
setHeader(name: string, value: string): Request;
|
||||
setHeaders(headers: any): Request;
|
||||
hasHeader(name: string): boolean;
|
||||
type(contentType: string): Request;
|
||||
send(body: any): Request;
|
||||
json(body: any): Request;
|
||||
jsonBody(): any;
|
||||
|
||||
method: string;
|
||||
url: string;
|
||||
protocol: string;
|
||||
hostname: string;
|
||||
port: string;
|
||||
pathname: string;
|
||||
hash: string;
|
||||
headers: Record<string, string>;
|
||||
body: any;
|
||||
query: any;
|
||||
params: any;
|
||||
recordingName: string;
|
||||
responseTime?: number;
|
||||
}
|
||||
export interface Response {
|
||||
statusCode?: number;
|
||||
headers: Record<string, string>;
|
||||
body: any;
|
||||
status(status: number): Response;
|
||||
getHeader(name: string): string | null;
|
||||
setHeader(name: string, value: string): Response;
|
||||
setHeaders(headers: any): Response;
|
||||
hasHeader(name: string): boolean;
|
||||
type(contentType: string): Response;
|
||||
send(body: any): Response;
|
||||
sendStatus(status: number): Response;
|
||||
json(body: any): Response;
|
||||
jsonBody(): any;
|
||||
end(): Readonly<Response>;
|
||||
}
|
||||
export interface Intercept {
|
||||
abort(): void;
|
||||
passthrough(): void;
|
||||
}
|
||||
export type RequestRouteEvent = 'request';
|
||||
export type RecordingRouteEvent = 'beforeReplay' | 'beforePersist';
|
||||
export type ResponseRouteEvent = 'beforeResponse' | 'response';
|
||||
|
||||
export type EventListenerResponse = any;
|
||||
export type RequestEventListener = (req: Request) => EventListenerResponse;
|
||||
export type RecordingEventListener = (req: Request, recording: any) => EventListenerResponse;
|
||||
export type ResponseEventListener = (req: Request, res: Response) => EventListenerResponse;
|
||||
export type InterceptHandler = (
|
||||
req: Request,
|
||||
res: Response,
|
||||
intercept: Intercept
|
||||
) => EventListenerResponse;
|
||||
export class RouteHandler {
|
||||
on(event: RequestRouteEvent, listener: RequestEventListener): RouteHandler;
|
||||
on(event: RecordingRouteEvent, listener: RecordingEventListener): RouteHandler;
|
||||
on(event: ResponseRouteEvent, listener: ResponseEventListener): RouteHandler;
|
||||
off(event: RequestRouteEvent, listener: RequestEventListener): RouteHandler;
|
||||
off(event: RecordingRouteEvent, listener: RecordingEventListener): RouteHandler;
|
||||
off(event: ResponseRouteEvent, listener: ResponseEventListener): RouteHandler;
|
||||
once(event: RequestRouteEvent, listener: RequestEventListener): RouteHandler;
|
||||
once(event: RecordingRouteEvent, listener: RecordingEventListener): RouteHandler;
|
||||
once(event: ResponseRouteEvent, listener: ResponseEventListener): RouteHandler;
|
||||
|
||||
passthrough(value?: boolean): RouteHandler;
|
||||
intercept(
|
||||
fn: (req: Request, res: Response, intercept: Intercept) => EventListenerResponse
|
||||
): RouteHandler;
|
||||
recordingName(recordingName: string): RouteHandler;
|
||||
configure(config: PollyConfig): RouteHandler;
|
||||
}
|
||||
export class PollyServer {
|
||||
timeout: (ms: number) => Promise<void>;
|
||||
get: (...args: any[]) => RouteHandler;
|
||||
put: (...args: any[]) => RouteHandler;
|
||||
post: (...args: any[]) => RouteHandler;
|
||||
delete: (...args: any[]) => RouteHandler;
|
||||
patch: (...args: any[]) => RouteHandler;
|
||||
head: (...args: any[]) => RouteHandler;
|
||||
options: (...args: any[]) => RouteHandler;
|
||||
any: (...args: any[]) => RouteHandler;
|
||||
host(host: string, callback: () => void): void;
|
||||
namespace(path: string, callback: () => void): void;
|
||||
}
|
||||
export type PollyEvent = 'create' | 'stop' | 'register';
|
||||
export type PollyEventListener = (poll: Polly) => void;
|
||||
export class Polly {
|
||||
static register(Factory: typeof Adapter | typeof Persister): void;
|
||||
static on(event: PollyEvent, listener: PollyEventListener): void;
|
||||
static off(event: PollyEvent, listener: PollyEventListener): void;
|
||||
static once(event: PollyEvent, listener: PollyEventListener): void;
|
||||
|
||||
constructor(name: string, options?: PollyConfig);
|
||||
|
||||
readonly recordingName: string | null;
|
||||
mode: MODES;
|
||||
server: PollyServer;
|
||||
persister: Persister;
|
||||
|
||||
pause: () => void;
|
||||
play: () => void;
|
||||
replay: () => void;
|
||||
record: () => void;
|
||||
stop: () => Promise<void>;
|
||||
flush: () => Promise<void>;
|
||||
configure(config: PollyConfig): void;
|
||||
connectTo(name: string | typeof Adapter): void;
|
||||
disconnectFrom(name: string | typeof Adapter): void;
|
||||
disconnect(): void;
|
||||
}
|
||||
64
types/pollyjs__core/pollyjs__core-tests.ts
Normal file
64
types/pollyjs__core/pollyjs__core-tests.ts
Normal file
@ -0,0 +1,64 @@
|
||||
import { Polly, Timing } from '@pollyjs/core';
|
||||
import { MODES } from '@pollyjs/utils';
|
||||
|
||||
const polly = new Polly('test recording', {
|
||||
mode: MODES.PASSTHROUGH,
|
||||
recordFailedRequests: true,
|
||||
adapters: ['xhr', 'fetch'],
|
||||
persister: 'rest',
|
||||
timing: Timing.relative(3)
|
||||
});
|
||||
|
||||
function log(_: string) {
|
||||
// no op
|
||||
}
|
||||
|
||||
async function test() {
|
||||
polly.pause();
|
||||
polly.play();
|
||||
const { server } = polly;
|
||||
server.get('/session').on('request', req => {
|
||||
req.headers['X-AUTH'] = '<ACCESS_TOKEN>';
|
||||
req.query.email = 'test@app.com';
|
||||
});
|
||||
server.get('/session').on('beforeResponse', (req, res) => {
|
||||
res.setHeader('X-AUTH', '<ACCESS_TOKEN>');
|
||||
});
|
||||
server.get('/session').on('response', (req, res) => {
|
||||
log(`${req.url} took ${req.responseTime}ms with a status of ${res.statusCode}.`);
|
||||
});
|
||||
|
||||
polly.configure({
|
||||
adapterOptions: {
|
||||
fetch: {
|
||||
context: null
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
server
|
||||
.get('/session')
|
||||
.once('request', req => {
|
||||
req.headers['X-AUTH'] = '<ACCESS_TOKEN>';
|
||||
req.query.email = 'test@app.com';
|
||||
})
|
||||
.once('request', () => {
|
||||
/* Do something else */
|
||||
});
|
||||
|
||||
/* Intercept all Google Analytic requests and respond with a 200 */
|
||||
server.get('/google-analytics/*path').intercept((req, res, intercept) => {
|
||||
if (req.pathname === 'test') {
|
||||
intercept.abort();
|
||||
} else {
|
||||
res.sendStatus(200);
|
||||
}
|
||||
});
|
||||
|
||||
/* Pass-through all GET requests to /coverage */
|
||||
server.get('/coverage')
|
||||
.configure({ expiresIn: '5d' })
|
||||
.passthrough();
|
||||
|
||||
await polly.flush();
|
||||
}
|
||||
37
types/pollyjs__core/tsconfig.json
Normal file
37
types/pollyjs__core/tsconfig.json
Normal file
@ -0,0 +1,37 @@
|
||||
{
|
||||
"compilerOptions": {
|
||||
"module": "commonjs",
|
||||
"lib": [
|
||||
"es6"
|
||||
],
|
||||
"noImplicitAny": true,
|
||||
"noImplicitThis": true,
|
||||
"strictNullChecks": true,
|
||||
"strictFunctionTypes": true,
|
||||
"baseUrl": "../",
|
||||
"typeRoots": [
|
||||
"../"
|
||||
],
|
||||
"types": [],
|
||||
"noEmit": true,
|
||||
"forceConsistentCasingInFileNames": true,
|
||||
"paths": {
|
||||
"@pollyjs/core": [
|
||||
"pollyjs__core"
|
||||
],
|
||||
"@pollyjs/utils": [
|
||||
"pollyjs__utils"
|
||||
],
|
||||
"@pollyjs/persister": [
|
||||
"pollyjs__persister"
|
||||
],
|
||||
"@pollyjs/adapter": [
|
||||
"pollyjs__adapter"
|
||||
]
|
||||
}
|
||||
},
|
||||
"files": [
|
||||
"index.d.ts",
|
||||
"pollyjs__core-tests.ts"
|
||||
]
|
||||
}
|
||||
1
types/pollyjs__core/tslint.json
Normal file
1
types/pollyjs__core/tslint.json
Normal file
@ -0,0 +1 @@
|
||||
{ "extends": "dtslint/dt.json" }
|
||||
9
types/pollyjs__persister-fs/index.d.ts
vendored
Normal file
9
types/pollyjs__persister-fs/index.d.ts
vendored
Normal file
@ -0,0 +1,9 @@
|
||||
// Type definitions for @pollyjs/persister-fs 1.2
|
||||
// Project: https://github.com/netflix/pollyjs/tree/master/packages/@pollyjs/persister-fs
|
||||
// Definitions by: feinoujc <https://github.com/feinoujc>
|
||||
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
|
||||
// TypeScript Version: 2.4
|
||||
|
||||
import Persister from '@pollyjs/persister';
|
||||
|
||||
export default class FSPersister extends Persister {}
|
||||
@ -0,0 +1,8 @@
|
||||
import FSPersister from '@pollyjs/persister-fs';
|
||||
import { Polly } from '@pollyjs/core';
|
||||
|
||||
Polly.register(FSPersister);
|
||||
|
||||
new Polly('<recording>', {
|
||||
persister: FSPersister
|
||||
});
|
||||
41
types/pollyjs__persister-fs/tsconfig.json
Normal file
41
types/pollyjs__persister-fs/tsconfig.json
Normal file
@ -0,0 +1,41 @@
|
||||
{
|
||||
"compilerOptions": {
|
||||
"module": "commonjs",
|
||||
"lib": [
|
||||
"es6"
|
||||
],
|
||||
"noImplicitAny": true,
|
||||
"noImplicitThis": true,
|
||||
"strictNullChecks": true,
|
||||
"strictFunctionTypes": true,
|
||||
"baseUrl": "../",
|
||||
"typeRoots": [
|
||||
"../"
|
||||
],
|
||||
"types": [],
|
||||
"noEmit": true,
|
||||
"forceConsistentCasingInFileNames": true,
|
||||
"paths": {
|
||||
"@pollyjs/persister": [
|
||||
"pollyjs__persister"
|
||||
],
|
||||
"@pollyjs/persister-fs": [
|
||||
"pollyjs__persister-fs"
|
||||
],
|
||||
"@pollyjs/core": [
|
||||
"pollyjs__core"
|
||||
],
|
||||
"@pollyjs/utils": [
|
||||
"pollyjs__utils"
|
||||
],
|
||||
"@pollyjs/adapter": [
|
||||
"pollyjs__adapter"
|
||||
]
|
||||
}
|
||||
|
||||
},
|
||||
"files": [
|
||||
"index.d.ts",
|
||||
"pollyjs__persister-fs-tests.ts"
|
||||
]
|
||||
}
|
||||
1
types/pollyjs__persister-fs/tslint.json
Normal file
1
types/pollyjs__persister-fs/tslint.json
Normal file
@ -0,0 +1 @@
|
||||
{ "extends": "dtslint/dt.json" }
|
||||
10
types/pollyjs__persister/index.d.ts
vendored
Normal file
10
types/pollyjs__persister/index.d.ts
vendored
Normal file
@ -0,0 +1,10 @@
|
||||
// Type definitions for @pollyjs/persister 1.2
|
||||
// Project: https://github.com/netflix/pollyjs/tree/master/packages/@pollyjs/persister
|
||||
// Definitions by: feinoujc <https://github.com/feinoujc>
|
||||
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
|
||||
|
||||
export default class Persister {
|
||||
static readonly name: string;
|
||||
static readonly type: string;
|
||||
persist(): Promise<void>;
|
||||
}
|
||||
4
types/pollyjs__persister/pollyjs__persister-tests.ts
Normal file
4
types/pollyjs__persister/pollyjs__persister-tests.ts
Normal file
@ -0,0 +1,4 @@
|
||||
import Persister from '@pollyjs/persister';
|
||||
|
||||
Persister.name;
|
||||
Persister.type;
|
||||
31
types/pollyjs__persister/tsconfig.json
Normal file
31
types/pollyjs__persister/tsconfig.json
Normal file
@ -0,0 +1,31 @@
|
||||
{
|
||||
"compilerOptions": {
|
||||
"module": "commonjs",
|
||||
"lib": [
|
||||
"es6"
|
||||
],
|
||||
"noImplicitAny": true,
|
||||
"noImplicitThis": true,
|
||||
"strictNullChecks": true,
|
||||
"strictFunctionTypes": true,
|
||||
"baseUrl": "../",
|
||||
"typeRoots": [
|
||||
"../"
|
||||
],
|
||||
"types": [],
|
||||
"noEmit": true,
|
||||
"forceConsistentCasingInFileNames": true,
|
||||
"paths": {
|
||||
"@pollyjs/core": [
|
||||
"pollyjs__core"
|
||||
],
|
||||
"@pollyjs/persister": [
|
||||
"pollyjs__persister"
|
||||
]
|
||||
}
|
||||
},
|
||||
"files": [
|
||||
"index.d.ts",
|
||||
"pollyjs__persister-tests.ts"
|
||||
]
|
||||
}
|
||||
1
types/pollyjs__persister/tslint.json
Normal file
1
types/pollyjs__persister/tslint.json
Normal file
@ -0,0 +1 @@
|
||||
{ "extends": "dtslint/dt.json" }
|
||||
12
types/pollyjs__utils/index.d.ts
vendored
Normal file
12
types/pollyjs__utils/index.d.ts
vendored
Normal file
@ -0,0 +1,12 @@
|
||||
// Type definitions for @pollyjs/utils 1.2
|
||||
// Project: https://github.com/netflix/pollyjs/tree/master/packages/@pollyjs/utils
|
||||
// Definitions by: feinoujc <https://github.com/feinoujc>
|
||||
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
|
||||
// TypeScript Version: 2.4
|
||||
|
||||
export enum MODES {
|
||||
RECORD = 'record',
|
||||
REPLAY = 'replay',
|
||||
PASSTHROUGH = 'passthrough',
|
||||
STOPPED = 'stopped'
|
||||
}
|
||||
6
types/pollyjs__utils/pollyjs__utils-tests.ts
Normal file
6
types/pollyjs__utils/pollyjs__utils-tests.ts
Normal file
@ -0,0 +1,6 @@
|
||||
import { MODES } from '@pollyjs/utils';
|
||||
|
||||
MODES.PASSTHROUGH;
|
||||
MODES.RECORD;
|
||||
MODES.REPLAY;
|
||||
MODES.STOPPED;
|
||||
28
types/pollyjs__utils/tsconfig.json
Normal file
28
types/pollyjs__utils/tsconfig.json
Normal file
@ -0,0 +1,28 @@
|
||||
{
|
||||
"compilerOptions": {
|
||||
"module": "commonjs",
|
||||
"lib": [
|
||||
"es6"
|
||||
],
|
||||
"noImplicitAny": true,
|
||||
"noImplicitThis": true,
|
||||
"strictNullChecks": true,
|
||||
"strictFunctionTypes": true,
|
||||
"baseUrl": "../",
|
||||
"typeRoots": [
|
||||
"../"
|
||||
],
|
||||
"types": [],
|
||||
"noEmit": true,
|
||||
"forceConsistentCasingInFileNames": true,
|
||||
"paths": {
|
||||
"@pollyjs/utils": [
|
||||
"pollyjs__utils"
|
||||
]
|
||||
}
|
||||
},
|
||||
"files": [
|
||||
"index.d.ts",
|
||||
"pollyjs__utils-tests.ts"
|
||||
]
|
||||
}
|
||||
1
types/pollyjs__utils/tslint.json
Normal file
1
types/pollyjs__utils/tslint.json
Normal file
@ -0,0 +1 @@
|
||||
{ "extends": "dtslint/dt.json" }
|
||||
Loading…
Reference in New Issue
Block a user