@kontent-ai/management-sdk
Version:
Official Kontent.ai management SDK
134 lines (133 loc) • 5.86 kB
TypeScript
import { WebhookContracts } from '../../contracts/webhook-contracts';
import { SharedModels } from '../shared/shared-models';
export declare namespace WebhookModels {
type WebhookWorkflowStepOperation = 'publish' | 'unpublish' | 'archive' | 'restore' | 'upsert';
type WebhookContentTypeActions = 'created' | 'changed' | 'deleted';
type WebhookAssetActions = 'created' | 'changed' | 'metadata_changed' | 'deleted';
type WebhookTaxonomyActions = 'created' | 'metadata_changed' | 'deleted' | 'term_created' | 'term_changed' | 'term_deleted' | 'terms_moved';
type WebhookLanguageActions = 'created' | 'changed' | 'deleted';
type WebhookContentItemActions = 'published' | 'unpublished' | 'created' | 'changed' | 'metadata_changed' | 'deleted' | 'workflow_step_changed';
type WebhookManagementContentChangesOperations = 'archive' | 'create' | 'restore';
type WebhookPreviewContentChangesOperations = 'archive' | 'upsert' | 'restore';
type WebhookDeliveryTriggerSlots = 'published' | 'preview';
type WebhookDeliveryTriggersEvents = 'all' | 'specific';
type WebhookHealthStatus = 'unknown' | 'working' | 'failing' | 'dead';
interface IAddWebhookData {
name: string;
secret: string;
url: string;
enabled?: boolean;
headers?: IWebhookHeader[];
delivery_triggers: {
slot: WebhookDeliveryTriggerSlots;
events: WebhookDeliveryTriggersEvents;
asset?: WebhookContracts.IWebhookAssetContract;
content_type?: WebhookContracts.IWebhookContentTypeContract;
taxonomy?: WebhookContracts.IWebhookTaxonomyContract;
language?: WebhookContracts.IWebhookLanguageContract;
content_item?: WebhookContracts.IWebhookContentItemContract;
};
}
class WebhookDeliveryTriggersContentType {
enabled: boolean;
actions?: WebhookContracts.WebhookAction<WebhookContentTypeActions>[];
filters?: WebhookContracts.IContentTypeFilters;
constructor(data: {
enabled: boolean;
actions?: WebhookContracts.WebhookAction<WebhookContentTypeActions>[];
filters?: WebhookContracts.IContentTypeFilters;
});
}
class WebhookDeliveryTriggersAsset {
enabled: boolean;
actions?: WebhookContracts.WebhookAction<WebhookAssetActions>[];
constructor(data: {
enabled: boolean;
actions?: WebhookContracts.WebhookAction<WebhookAssetActions>[];
});
}
class WebhookDeliveryTriggersTaxonomy {
enabled: boolean;
actions?: WebhookContracts.WebhookAction<WebhookTaxonomyActions>[];
filters?: WebhookContracts.ITaxonomyFilters;
constructor(data: {
enabled: boolean;
actions?: WebhookContracts.WebhookAction<WebhookTaxonomyActions>[];
filters?: WebhookContracts.ITaxonomyFilters;
});
}
class WebhookDeliveryTriggersLanguage {
enabled: boolean;
actions?: WebhookContracts.WebhookAction<WebhookLanguageActions>[];
filters?: WebhookContracts.ILanguageFilters;
constructor(data: {
enabled: boolean;
actions?: WebhookContracts.WebhookAction<WebhookLanguageActions>[];
filters?: WebhookContracts.ILanguageFilters;
});
}
class WebhookDeliveryTriggersContentItem {
enabled: boolean;
actions?: (WebhookContracts.WebhookAction<WebhookContentItemActions> & {
transition_to?: WebhookContracts.ContentItemTransitionTo[];
})[];
filters?: WebhookContracts.IContentItemFilters;
constructor(data: {
enabled: boolean;
actions?: (WebhookContracts.WebhookAction<WebhookContentItemActions> & {
transition_to?: WebhookContracts.ContentItemTransitionTo[];
})[];
filters?: WebhookContracts.IContentItemFilters;
});
}
class WebhookTransitionsTo {
id: string;
constructor(data: {
id: string;
});
}
interface IWebhookHeader {
key: string;
value: string;
}
class Webhook implements SharedModels.IBaseModel<WebhookContracts.IWebhookContract> {
id: string;
name: string;
secret: string;
url: string;
enabled?: boolean;
lastModified?: Date;
healthStatus?: WebhookHealthStatus;
headers?: IWebhookHeader[];
deliveryTriggers: {
slot: WebhookDeliveryTriggerSlots;
events: WebhookDeliveryTriggersEvents;
asset?: WebhookContracts.IWebhookAssetContract;
contentType?: WebhookContracts.IWebhookContentTypeContract;
taxonomy?: WebhookContracts.IWebhookTaxonomyContract;
language?: WebhookContracts.IWebhookLanguageContract;
contentItem?: WebhookContracts.IWebhookContentItemContract;
};
_raw: WebhookContracts.IWebhookContract;
constructor(data: {
id: string;
name: string;
secret: string;
url: string;
enabled?: boolean;
lastModified?: Date;
healthStatus?: WebhookHealthStatus;
headers?: IWebhookHeader[];
deliveryTriggers: {
slot: WebhookDeliveryTriggerSlots;
events: WebhookDeliveryTriggersEvents;
asset?: WebhookContracts.IWebhookAssetContract;
contentType?: WebhookContracts.IWebhookContentTypeContract;
taxonomy?: WebhookContracts.IWebhookTaxonomyContract;
language?: WebhookContracts.IWebhookLanguageContract;
contentItem?: WebhookContracts.IWebhookContentItemContract;
};
_raw: WebhookContracts.IWebhookContract;
});
}
}