serverless-spy
Version:
CDK-based library for writing elegant integration tests on AWS serverless architecture and an additional web console to monitor events in real time.
45 lines (44 loc) • 1.29 kB
TypeScript
import { FieldPosition } from "@smithy/types";
import { Field } from "./Field";
export type FieldsOptions = {
fields?: Field[];
encoding?: string;
};
/**
* Collection of Field entries mapped by name.
*/
export declare class Fields {
private readonly entries;
private readonly encoding;
constructor({ fields, encoding }: FieldsOptions);
/**
* Set entry for a {@link Field} name. The `name`
* attribute will be used to key the collection.
*
* @param field The {@link Field} to set.
*/
setField(field: Field): void;
/**
* Retrieve {@link Field} entry by name.
*
* @param name The name of the {@link Field} entry
* to retrieve
* @returns The {@link Field} if it exists.
*/
getField(name: string): Field | undefined;
/**
* Delete entry from collection.
*
* @param name Name of the entry to delete.
*/
removeField(name: string): void;
/**
* Helper function for retrieving specific types of fields.
* Used to grab all headers or all trailers.
*
* @param kind {@link FieldPosition} of entries to retrieve.
* @returns The {@link Field} entries with the specified
* {@link FieldPosition}.
*/
getByType(kind: FieldPosition): Field[];
}