mirror of
https://github.com/gosticks/DefinitelyTyped.git
synced 2026-02-09 02:12:51 +00:00
* k6: Document fail * k6: Remove docs link Complete docs are included in the doc comment. * k6: Document group * k6: Document sleep * k6: Order signature docs before remarks Renders more usefully in Visual Studio Code. * k6: Document check * k6: Space documented declarations * k6: Space section headers * k6: Document method releases * k6: Simplify check documentation * k6: Simplify fail documentation * k6: Simplify group documentation * k6: Document package * k6: Compress documentation * k6: Document Checker * k6: Document Checkers * k6: Link to check docs * k6: Link to fail docs * k6: Link to group docs * k6: Link to sleep docs * k6: Correct returns tag * k6: Document check type param * k6: Document group return type * k6: Document byte * k6: Document bytes * k6: Document JSON types * k6: Configure API Extractor Enables validating docs with: mkdir -p etc; api-extractor run -c api-extractor.json -l * k6: Ignore docs build * k6: Document doc comment validation * k6: Disable API report generation * k6: Disable doc model generation * k6: Disable .d.ts rollup generation * k6: Disable TSDoc metadata generation * k6: Document typeParam tag warnings * k6/global: Document module * k6/global: Normalize section comments * k6/global: Document open * k6/global: Document __ENV * k6/global: Refine __ENV type * k6/global: Document __VU * k6/global: Document __ITER * k6/global: Document console * k6/global: Normalize VU logic references * k6: Improve section header visibility * k6/crypto: Document module * k6/crypto: Document randomBytes * k6/crypto: Document hmac * k6/crypto: Document md4 * k6/crypto: Document md5 * k6/crypto: Document sha1 * k6/crypto: Document sha256 * k6/crypto: Document sha384 * k6/crypto: Document sha512 * k6/crypto: Document sha512_224 * k6/crypto: Document sha512_256 * k6/crypto: Document ripemd160 * k6/crypto: Document createHash * k6/crypto: Document createHMAC * k6/crypto: Link to createHash docs * k6/crypto: Document Algorithm * k6/crypto: Document StringEncoding * k6/crypto: Document BinaryEncoding * k6/crypto: Document OutputEncoding * k6/crypto: Document Output * k6/crypto: Document Hasher * k6/crypto: Document Hasher#update * k6/crypto: Document Hasher#digest * k6/crypto: Update formatting Repo formatter really wants it this way. * k6/encoding: Document module * k6/encoding: Document b64encode * k6/encoding: Document b64decode * k6/encoding: Document Base64Variant * k6/html: Document module * k6/html: Document parseHTML * k6/html: Add section headers * k6/html: Document Selection * k6: Disable redundant JSDoc check Incorrectly applies to our TSDoc doc comments. * k6/global: Add missing semicolon * k6/global: Correct test * k6/html: Update tests * k6/html: Accept overloads for documentation The overloads in these cases produce more natural IntelliSense rendering of the documentation. * k6/html: Document FormValue * k6/html: Document Tester * k6/html: Document Handler * k6/html: Document Mapper * k6/html: Qualify FormValue description * k6/html: Normalize section header language * k6/html: Document Attribute * k6/html: Document NodeType * k6/html: Document Element * k6/html: Document AnchorElement * k6/html: Document AreaElement * k6/html: Link to Element docs * k6/html: Document AudioElement * k6/html: Document BaseElement * k6/html: Document ButtonElement * k6/html: Document CanvasElement * k6/html: Document DataElement * k6/html: Document DataListElement * k6/html: Document DelElement * k6/html: Document EmbedElement * k6/html: Document FieldSetElement * k6/html: Document FormElement * k6/html: Document FormFieldElement * k6/html: Document HrefElement * k6/html: Document IFrameElement * k6/html: Document ImageElement * k6/html: Document InputElement * k6/html: Document InsElement * k6/html: Document KeygenElement * k6/html: Document LabelElement * k6/html: Document LegendElement * k6/html: Document LiElement * k6/html: Document LinkElement * k6/html: Document MapElement * k6/html: Document MediaElement * k6/html: Document MetaElement * k6/html: Document MeterElement * k6/html: Document ModElement * k6/html: Document ObjectElement * k6/html: Document OListElement * k6/html: Document OptGroupElement * k6/html: Document OptionElement * k6/html: Document OutputElement * k6/html: Document ParamElement * k6/html: Document PreElement * k6/html: Document ProgressElement * k6/html: QuoteElement * k6/html: Document ScriptElement * k6/html: Document SelectElement * k6/html: Document SourceElement * k6/html: Document StyleElement * k6/html: Document TableBodyElement * k6/html: Document TableCellElement * k6/html: Document TableColElement * k6/html: Document TableDataCellElement * k6/html: Document TableElement * k6/html: Document TableFootElement * k6/html: Document TableHeadElement * k6/html: Document TableHeaderCellElement * k6/html: Document TableRowElement * k6/html: Document TableSectionElement * k6/html: Document TextAreaElement * k6/html: Document TimeElement * k6/html: Document TitleElement * k6/html: Document TrackElement * k6/html: Correct MediaElement#textTracks return type * k6/html: Document UListElement * k6/html: Document VideoElement * k6/html: Update HrefElement test * k6/http: Document module * k6/http: Add section headers * k6/http: Normalize refined params type name * k6/http: Normalize refined batch request type names * k6/http: Remove generics justification * k6/http: Document del * k6/http: Document get * k6/http: Document options * k6/http: Document patch * k6/http: Document post * k6/http: Document put * k6/http: Document request * k6/http: Document batch * k6/http: Document file * k6/http: Document cookieJar * k6/http: Include release tags * k6/http: Document Params * k6/http: Document RefinedParams * k6/http: Document AuthMethod * k6/http: Document ResponseType * k6/http: Document ParamsCookieValue * k6/http: Document RequestBody * k6/http: Document StructuredRequestBody * k6/http: Document batch request types * k6/http: Document refined batch request types * k6/http: Document BatchResponses * k6/http: Document Response properties * k6/http: Document Response.html * k6/http: Document Response.json * k6/http: Document Response.clickLink * k6/http: Document Response.submitForm * k6/http: Define SSL/TLS version constants * k6/http: Define OCSP status constants * k6/http: Document OCSP reason constants * k6/http: Define CipherSuite * k6/http: Document Protocol * k6/http: Document CipherSuite * k6/http: Document RefinedResponse * k6/http: Document ResponseBody * k6/http: Document RefinedResponseBody * k6/http: Document RequestCookie * k6/http: Document ResponseCookie * k6/http: Correct Unix time specifications * k6/http: Document FileData * k6/http: Accept formatter changes * k6/http: Link to FileData docs * k6/http: Accept formatter changes * k6/http: Document CookieJar * k6/http: Document CookieJarCookies * k6/http: CookieOptions * k6/metrics: Document module * k6/metrics: Document Metric * k6/metrics: Document Counter * k6/metrics: Document Gauge * k6/metrics: Document Rate * k6/metrics: Document Trend * k6/ws: Document module * k6/ws: Add section headers * k6/ws: Document connect * k6/ws: Document Params * k6/ws: Document Executor * k6/ws: Document Response * k6/ws: Document Socket * k6/ws: Document EventType * k6/ws: Document TimerHandler * k6/ws: Document event handlers * k6/ws: Document WebSocketError * k6/options: Document module * k6/options: Document Options * k6/options: Document CollectorOptions * k6/options: Document Stage * k6/options: Document threshold specifications * k6/options: Document Certificate * k6: Remove API Extractor config No obvious way to get the repo test to accept it. To be restored when an approach is discovered.
168 lines
3.7 KiB
TypeScript
168 lines
3.7 KiB
TypeScript
/*
|
|
* Program options.
|
|
* https://docs.k6.io/docs/options
|
|
*/
|
|
|
|
import { CipherSuite } from './http';
|
|
|
|
/**
|
|
* Program options.
|
|
* https://docs.k6.io/docs/options
|
|
* @public
|
|
*/
|
|
export interface Options {
|
|
/** Maximum parallel `http.batch()` connections per VU. */
|
|
batch: number;
|
|
|
|
/** Maximum parallel `http.batch()` host connections per VU. */
|
|
batchPerHost: number;
|
|
|
|
/** Blacklist IP ranges from being called. */
|
|
blacklistIPs: string[];
|
|
|
|
/** Discard response bodies. */
|
|
discardResponseBodies: boolean;
|
|
|
|
/** Test duration. */
|
|
duration: string;
|
|
|
|
/** Third party collector configuration. */
|
|
ext: { [name: string]: CollectorOptions };
|
|
|
|
/** Static hostname mapping. */
|
|
hosts: { [name: string]: string };
|
|
|
|
/** Log all HTTP requests and responses. */
|
|
httpDebug: string;
|
|
|
|
/** Disable TLS verification. Insecure. */
|
|
insecureSkipTLSVerify: boolean;
|
|
|
|
/** Iterations to execute. */
|
|
iterations: number;
|
|
|
|
/** Persist the k6 process after test completion. */
|
|
linger: boolean;
|
|
|
|
/** Maximum HTTP redirects to follow. */
|
|
maxRedirects: number;
|
|
|
|
/** Minimum test iteration duration. */
|
|
minIterationDuration: string;
|
|
|
|
/** Disable keepalive connections. */
|
|
noConnectionReuse: boolean;
|
|
|
|
/** Disable usage reports. */
|
|
noUsageReport: boolean;
|
|
|
|
/** Disable cross-VU TCP connection reuse. */
|
|
noVUConnectionReuse: boolean;
|
|
|
|
/** Start test in paused state. */
|
|
paused: boolean;
|
|
|
|
/** Maximum requests per second across all VUs. */
|
|
rps: number;
|
|
|
|
/** Setup function timeout. */
|
|
setupTimeout: string;
|
|
|
|
/** Test stage specifications. Program of target VU stages. */
|
|
stages: Stage[];
|
|
|
|
/** Define stats for trend metrics. */
|
|
summaryTrendStats: string[];
|
|
|
|
/** Which system tags to include in collected metrics. */
|
|
systemTags: string[];
|
|
|
|
/** Tags to set test wide across all metrics. */
|
|
tags: { [name: string]: string };
|
|
|
|
/** Teardown function timeout. */
|
|
teardownTimeout: string;
|
|
|
|
/** Threshold specifications. Defines pass and fail conditions. */
|
|
thresholds: { [name: string]: Threshold[] };
|
|
|
|
/** Throw error on failed HTTP request. */
|
|
throw: boolean;
|
|
|
|
/** TLS client certificates. */
|
|
tlsAuth: Certificate[];
|
|
|
|
/** Allowed TLS cipher suites. */
|
|
tlsCipherSuites: CipherSuite[];
|
|
|
|
/** Allowed TLS version. Use `http.SSL_*` `http.TLS_*` constants. */
|
|
tlsVersion: string | { min: string; max: string };
|
|
|
|
/** User agent string to include in HTTP requests. */
|
|
userAgent: string;
|
|
|
|
/** Number of VUs to run concurrently. */
|
|
vus: number;
|
|
|
|
/** Maximum VUs. Preallocates VUs to enable faster scaling. */
|
|
vusMax: number;
|
|
}
|
|
|
|
/**
|
|
* Third party collector configuration.
|
|
* @public
|
|
*/
|
|
export interface CollectorOptions {
|
|
[name: string]: any;
|
|
}
|
|
|
|
/**
|
|
* Test stage.
|
|
* @public
|
|
*/
|
|
export interface Stage {
|
|
/** Stage duration. */
|
|
duration: string;
|
|
|
|
/** Target number of VUs. */
|
|
target: number;
|
|
}
|
|
|
|
/**
|
|
* Threshold specification.
|
|
* https://docs.k6.io/docs/thresholds
|
|
* @public
|
|
*/
|
|
export type Threshold = string | ObjectThreshold;
|
|
|
|
/**
|
|
* Object form threshold specification.
|
|
* https://docs.k6.io/docs/thresholds
|
|
* @public
|
|
*/
|
|
export interface ObjectThreshold {
|
|
/** Abort test if threshold violated. */
|
|
abortOnFail?: boolean;
|
|
|
|
/** Duration to delay evaluation. Enables collecting additional metrics. */
|
|
delayAbortEval?: string;
|
|
|
|
/** Threshold expression. */
|
|
threshold: string;
|
|
}
|
|
|
|
/**
|
|
* TLS client certificate.
|
|
* @public
|
|
*/
|
|
export interface Certificate {
|
|
/** PEM encoded certificate. */
|
|
cert: string;
|
|
|
|
/** Domains certificate is valid for. */
|
|
domains: string[];
|
|
|
|
/** PEM encoded certificate key. */
|
|
key: string;
|
|
}
|