import { IsoDatetime, EntityId, DocumentSnapshot } from '../Foundations';
export declare type CallbackEvent = {
    id: EntityId;
    orgId: EntityId;
    externalId?: string;
    callbackSubscriptionId: EntityId;
    kind: CallbackEventKind;
    documentSnapshot: DocumentSnapshot;
    dateCreated: IsoDatetime;
    status: CallbackEventStatus;
};
export declare type CallbackSubscription = {
    id: EntityId;
    orgId: EntityId;
    externalId?: string;
    eventKind: CallbackEventKind;
    url: string;
    status: CallbackSubscriptionStatus;
    dateCreated: IsoDatetime;
};
export declare type CreateCallbackSubscriptionInput = {
    externalId?: string;
    eventKind: CallbackEventKind;
    url: string;
};
export declare enum CallbackEventKind {
    PaymentInitiated = "PaymentInitiated",
    PaymentExecuted = "PaymentExecuted",
    PaymentConfirmed = "PaymentConfirmed",
    PaymentReceived = "PaymentReceived",
    TransactionBroadcasted = "TransactionBroadcasted",
    WalletCreated = "WalletCreated",
    PolicyActivated = "PolicyActivated"
}
export declare enum CallbackEventStatus {
    Sent = "Sent",
    Failed = "Failed"
}
export declare enum CallbackSubscriptionStatus {
    Enabled = "Enabled",
    Disabled = "Disabled",
    Archived = "Archived"
}
