{-# options_haddock prune #-}

-- |TmuxConfig Data Type, Internal
module Helic.Data.TmuxConfig where

import Path (Abs, File, Path)
import Polysemy.Time.Json (json)

data TmuxConfig =
  TmuxConfig {
    TmuxConfig -> Maybe Bool
enable :: Maybe Bool,
    TmuxConfig -> Maybe (Path Abs File)
exe :: Maybe (Path Abs File)
  }
  deriving stock (TmuxConfig -> TmuxConfig -> Bool
(TmuxConfig -> TmuxConfig -> Bool)
-> (TmuxConfig -> TmuxConfig -> Bool) -> Eq TmuxConfig
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: TmuxConfig -> TmuxConfig -> Bool
$c/= :: TmuxConfig -> TmuxConfig -> Bool
== :: TmuxConfig -> TmuxConfig -> Bool
$c== :: TmuxConfig -> TmuxConfig -> Bool
Eq, Int -> TmuxConfig -> ShowS
[TmuxConfig] -> ShowS
TmuxConfig -> String
(Int -> TmuxConfig -> ShowS)
-> (TmuxConfig -> String)
-> ([TmuxConfig] -> ShowS)
-> Show TmuxConfig
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [TmuxConfig] -> ShowS
$cshowList :: [TmuxConfig] -> ShowS
show :: TmuxConfig -> String
$cshow :: TmuxConfig -> String
showsPrec :: Int -> TmuxConfig -> ShowS
$cshowsPrec :: Int -> TmuxConfig -> ShowS
Show, (forall x. TmuxConfig -> Rep TmuxConfig x)
-> (forall x. Rep TmuxConfig x -> TmuxConfig) -> Generic TmuxConfig
forall x. Rep TmuxConfig x -> TmuxConfig
forall x. TmuxConfig -> Rep TmuxConfig x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep TmuxConfig x -> TmuxConfig
$cfrom :: forall x. TmuxConfig -> Rep TmuxConfig x
Generic)
  deriving anyclass (TmuxConfig
TmuxConfig -> Default TmuxConfig
forall a. a -> Default a
def :: TmuxConfig
$cdef :: TmuxConfig
Default)

json ''TmuxConfig