indexnow-submitter
Version:
An IndexNow Submission module with caching and analytics
34 lines (33 loc) • 942 B
TypeScript
interface Config {
engine: string;
key: string;
host: string;
keyLocation: string;
batchSize: number;
rateLimit: number;
cacheTTL: number;
}
interface Analytics {
totalSubmissions: number;
successfulSubmissions: number;
failedSubmissions: number;
averageResponseTime: number;
}
declare class IndexNowSubmitter {
private config;
private cache;
private analytics;
constructor(config?: Partial<Config>);
delay(ms: number): Promise<void>;
private submitBatch;
private updateAnalytics;
private processBatch;
submitUrls(urls: string[]): Promise<void>;
submitSingleUrl(url: string): Promise<void>;
private extractUrlsFromUrlset;
submitFromSitemap(sitemapUrl: string, modifiedSince?: Date): Promise<void>;
notifyDeleted(urls: string[]): Promise<void>;
getAnalytics(): Analytics;
}
export { IndexNowSubmitter, Config, Analytics };