// src/lib/service.ts
// Copyright (C) 2026 Rob Colbert <rob.colbert@openplatform.us>
// Licensed under the Apache License, Version 2.0

// import env from "../config/env.js";

import { GadgetComponent, GadgetLog } from "@gadget/api";

export abstract class GadgetService implements GadgetComponent {
  public log: GadgetLog;

  constructor() {
    this.log = new GadgetLog(this);
  }

  abstract get name(): string;
  abstract get slug(): string;

  abstract start(): Promise<void>;
  abstract stop(): Promise<void>;
}
