@siren-js/client
Version:
Siren API client library
17 lines (16 loc) • 749 B
TypeScript
import { Action, EmbeddedEntity, EmbeddedLink, Entity, Field, Link } from '../models';
import { SirenElementVisitor } from './siren-element-visitor';
/**
* Composes multiple {@linkcode SirenElementVisitor}s (from left to right) into a single Visitor.
*/
export declare class CompositeVisitor implements SirenElementVisitor {
readonly visitors: SirenElementVisitor[];
constructor(visitors: SirenElementVisitor[]);
visitAction(action: Action): Promise<void>;
visitEmbeddedEntity(entity: EmbeddedEntity): Promise<void>;
visitEmbeddedLink(link: EmbeddedLink): Promise<void>;
visitEntity(entity: Entity): Promise<void>;
visitField(field: Field): Promise<void>;
visitLink(link: Link): Promise<void>;
private apply;
}