@plq/faker
Version:
A set of classes for mocking known data types such as browser history, browser download list, persona, domain name, Jira project, GitHub repository, etc.
59 lines • 1.65 kB
TypeScript
import { MockUserItem } from './user';
import { MockProjectItem } from './project';
import { MockDomainItem } from './domain';
import { BaseItemMock } from './base';
export type SiteQuery = {
domain?: MockDomainItem;
user?: MockUserItem;
project?: MockProjectItem;
};
/**
* Class representing a base site mock.
* @extends BaseItemMock
*/
export declare abstract class BaseSiteMock<T extends object> extends BaseItemMock<T, SiteQuery> {
readonly user: MockUserItem;
readonly project: MockProjectItem;
readonly domain: MockDomainItem;
/**
* The templates of the site.
*/
protected abstract readonly templates: Record<string, string[][]>;
constructor(query?: SiteQuery);
/**
* Get the available templates of the site.
*/
get providers(): string[];
}
/**
* Class representing a base items mock.
* @extends BaseItemsMock
*/
export declare abstract class BaseItemsMock<T extends object, Q extends object> extends BaseItemMock<T, Q> {
items: T[];
/**
* Abstract method to create a mock item.
* @abstract
* @return The mock item
*/
protected abstract createMockItem(): T;
/**
* Abstract method to create an array of mock items.
* @abstract
* @return The array of mock items
*/
protected abstract createMockItems(): T[];
/**
* Get a random item from the items array.
*/
getItem(): T;
/**
* Get all items.
*/
getItems(): T[];
/**
* Reset the items array.
*/
reset(): void;
}
//# sourceMappingURL=base-extended.d.ts.map