import { Connector } from '@fusebit-int/framework';
import { OAuthConnector } from '@fusebit-int/oauth-connector';
interface IXeroEvent {
    resourceUrl: string;
    resourceId: string;
    eventDateUtc: string;
    eventType: string;
    eventCategory: string;
    tenantId: string;
    tenantType: string;
}
interface IXeroEventBody {
    events: IXeroEvent[];
    firstEventSequence: number;
    lastEventSequence: number;
    entropy: string;
}
declare class Service extends OAuthConnector.Service {
    getEventsFromPayload(ctx: Connector.Types.Context): any[] | void;
    getAuthIdFromEvent(ctx: Connector.Types.Context, event: any): string | void;
    protected eventToString(event: IXeroEvent): string;
    protected bodyToString(body: IXeroEventBody): string;
    validateWebhookEvent(ctx: Connector.Types.Context): Promise<boolean>;
    initializationChallenge(ctx: Connector.Types.Context): Promise<boolean>;
    getTokenAuthId(ctx: Connector.Types.Context, token: any): Promise<string | string[] | void>;
    getWebhookEventType(event: any): string;
}
export { Service };
//# sourceMappingURL=Service.d.ts.map