import { queries } from 'database'
import { handleWebhookRequest } from './postmark-webhook.js';
import { ConfigProvider, Effect, Either, Layer, pipe } from 'effect';
import { AppConfig, AppConfigSchema, MainDatabase, MembershipsDatabase, Lock, TracingAll, tryQuery } from './services.js';
import { handleEmailJobs } from './email-sending.js';
import * as Postmark from './postmark/postmark';
import { FetchHttpClient } from '@effect/platform';
import { Schema as S } from 'effect';
import * as Tracer from "@effect/opentelemetry/Tracer"
import { trace } from "@opentelemetry/api";
import { EmailJobBodySchema, MembershipRenewalEmailJobBodySchema } from './schemas.js';
import { honkAll } from './slack-honks.js';
import { queries } from 'database'
import { handleWebhookRequest } from './postmark-webhook.js';
import { ConfigProvider, Effect, Either, Layer, pipe } from 'effect';
import { AppConfig, AppConfigSchema, MainDatabase, MembershipsDatabase, Lock, TracingAll, tryQuery } from './services.js';
import { handleEmailJobs } from './email-sending.js';
import * as Postmark from './postmark/postmark';
import { FetchHttpClient } from '@effect/platform';
import { Schema as S } from 'effect';
import * as Tracer from "@effect/opentelemetry/Tracer"
import { trace } from "@opentelemetry/api";
import { EmailJobBodySchema, MembershipRenewalEmailJobBodySchema } from './schemas.js';
import { honkAll } from './slack-honks.js';