/** * Notifications API * Use the Notifications API to broadcast messages to distributed components by topic, using a publish-subscribe pattern. For information about managing topics, subscriptions, and messages, see [Notifications Overview](https://docs.oracle.com/iaas/Content/Notification/Concepts/notificationoverview.htm). * OpenAPI spec version: 20181201 * * * NOTE: This class is auto generated by OracleSDKGenerator. * Do not edit the class manually. * * Copyright (c) 2020, 2026, Oracle and/or its affiliates. All rights reserved. * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. */ /** * The properties that define a topic. For general information about topics, see * [Notifications Overview](https://docs.oracle.com/iaas/Content/Notification/Concepts/notificationoverview.htm). * */ export interface NotificationTopic { /** * The name of the topic. */ "name": string; /** * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the topic. * */ "topicId": string; /** * A unique short topic Id. This is used only for SMS subscriptions. * */ "shortTopicId"?: string; /** * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment for the topic. * */ "compartmentId": string; /** * The lifecycle state of the topic. * */ "lifecycleState": NotificationTopic.LifecycleState; /** * The description of the topic. */ "description"?: string; /** * The time the topic was created. */ "timeCreated": Date; /** * For optimistic concurrency control. See {@code if-match}. * */ "etag"?: string; /** * Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). *
Example: {@code {\"Department\": \"Finance\"}} * */ "freeformTags"?: { [key: string]: string; }; /** * Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). *
Example: {@code {\"Operations\": {\"CostCenter\": \"42\"}}} * */ "definedTags"?: { [key: string]: { [key: string]: any; }; }; /** * The endpoint for managing subscriptions or publishing messages to the topic. * */ "apiEndpoint": string; } export declare namespace NotificationTopic { enum LifecycleState { Active = "ACTIVE", Deleting = "DELETING", Creating = "CREATING", /** * This value is used if a service returns a value for this enum that is not recognized by this * version of the SDK. */ UnknownValue = "UNKNOWN_VALUE" } function getJsonObj(obj: NotificationTopic): object; function getDeserializedJsonObj(obj: NotificationTopic): object; }