import { FetchStateAndError, ID } from '../../commonStateTypes/common'; import { ZeniDate } from '../../zeniDayJS'; /** * A single user-feature interest record returned by * `GET /1.0/feature-interests` and `POST /1.0/feature-interests`. * * Used by the Integrations page "Notify me" buttons to register that the * user wants an email when a not-yet-shipped connector becomes available. * Generic enough to drive any future "Notify me" UI by adding a slug to * the backend allowlist (FEATURE_INTEREST_ALLOWED_VALUES). */ export interface FeatureInterest { createTime: ZeniDate; feature: string; interestId: ID; notified: boolean; updateTime: ZeniDate; additionalInfo?: string; email?: string; notifiedTime?: ZeniDate; } export interface FeatureNotificationViewState { fetchRegisteredInterestsState: FetchStateAndError; notifyMeForFeatureState: FetchStateAndError; registeredInterests: FeatureInterest[]; }