whodis-mcp-server
Version:
Whodis MCP Server for checking the availability of domain names using WHOIS lookups.
72 lines (71 loc) • 2.29 kB
TypeScript
/**
* Common type definitions shared across controllers.
* These types provide a standard interface for controller interactions.
* Centralized here to ensure consistency across the codebase.
*/
/**
* Common pagination information for API responses.
* This is used for providing consistent pagination details to clients.
*/
export interface ResponsePagination {
/**
* Cursor for the next page of results, if available.
* This should be passed to subsequent requests to retrieve the next page.
*/
nextCursor?: string;
/**
* Whether more results are available beyond the current page.
* When true, clients should use the nextCursor to retrieve more results.
*/
hasMore: boolean;
/**
* The number of items in the current result set.
* This helps clients track how many items they've received.
*/
count?: number;
}
/**
* Common pagination options for API requests.
* These options control how many results are returned and which page is retrieved.
*/
export interface PaginationOptions {
/**
* Maximum number of results to return per page.
* Valid range: 1-100
* If not specified, the default page size (typically 25) will be used.
*/
limit?: number;
/**
* Pagination cursor for retrieving a specific page of results.
* Obtain this value from the previous response's pagination information.
*/
cursor?: string;
}
/**
* Base interface for entity identifiers.
* Used to standardize parameter patterns across controllers.
* Each entity-specific identifier should extend this interface.
*/
export interface EntityIdentifier {
/**
* Allows for dynamic keys with string values.
* Entity-specific identifiers will add strongly-typed properties.
*/
[key: string]: string;
}
/**
* Common response structure for controller operations.
* All controller methods should return this structure.
*/
export interface ControllerResponse {
/**
* Formatted content to be displayed to the user.
* Usually a Markdown-formatted string.
*/
content: string;
/**
* Optional pagination information for list operations.
* If present, indicates that more results are available.
*/
pagination?: ResponsePagination;
}